%----Output an unreadable proof
% SZS output start Proof for theBenchmark
thf(type_def_5, type, term: $tType).
thf(type_def_6, type, subst: $tType).
thf(type_def_7, type, sTfun: ($tType * $tType) > $tType).
thf(type_def_8, type, d_term: $tType).
thf(type_def_9, type, d_subst: $tType).
thf(func_def_0, type, one: term).
thf(func_def_1, type, ap: (term > term > term)).
thf(func_def_2, type, lam: (term > term)).
thf(func_def_3, type, sub: (term > subst > term)).
thf(func_def_4, type, id: subst).
thf(func_def_5, type, sh: subst).
thf(func_def_6, type, push: (term > subst > subst)).
thf(func_def_7, type, comp: (subst > subst > subst)).
thf(func_def_8, type, var: (term > $o)).
thf(func_def_9, type, pushprop_lem1v2: $o).
thf(func_def_10, type, pushprop_lem1_gthm: $o).
thf(func_def_11, type, axmap: $o).
thf(func_def_12, type, pushprop_lem0_gthm: $o).
thf(func_def_13, type, shinj: $o).
thf(func_def_14, type, hoasinduction_lem1v2: $o).
thf(func_def_15, type, hoasinduction_lem1v2_gthm: $o).
thf(func_def_16, type, hoasap: (subst > term > subst > term > term)).
thf(func_def_17, type, induction2lem: $o).
thf(func_def_18, type, hoasinduction_lem3v2_f: $o).
thf(func_def_19, type, axvarshift: $o).
thf(func_def_20, type, hoasapinj2: $o).
thf(func_def_21, type, hoasapnotvar_gthm: $o).
thf(func_def_22, type, hoasapinj1: $o).
thf(func_def_23, type, ulamvar1: $o).
thf(func_def_24, type, induction2lem_lthm: $o).
thf(func_def_25, type, hoasinduction_lem3v2_gthm: $o).
thf(func_def_26, type, apnotvar: $o).
thf(func_def_27, type, pushprop_lthm_orig: $o).
thf(func_def_28, type, hoasinduction_lem3v2_f_lthm: $o).
thf(func_def_29, type, hoasinduction_lthm: $o).
thf(func_def_30, type, hoasinduction_no_psi_cond_lthm: $o).
thf(func_def_31, type, hoaslaminj: $o).
thf(func_def_32, type, hoasinduction_lem3aaa: $o).
thf(func_def_33, type, induction2lem_gthm: $o).
thf(func_def_34, type, hoasinduction_lem3aa_lthm: $o).
thf(func_def_35, type, hoasinduction_lem3: $o).
thf(func_def_36, type, hoasinduction_lem2: $o).
thf(func_def_37, type, termmset_lthm: $o).
thf(func_def_38, type, hoasinduction_lem1: $o).
thf(func_def_39, type, hoaslamnotap_lthm: $o).
thf(func_def_40, type, pushprop_lem1v2_lthm: $o).
thf(func_def_41, type, hoasapnotvar: $o).
thf(func_def_42, type, hoasinduction_lem0: $o).
thf(func_def_43, type, hoasinduction: $o).
thf(func_def_44, type, hoasinduction_gthm: $o).
thf(func_def_45, type, axapp: $o).
thf(func_def_46, type, hoaslamnotvar_lthm: $o).
thf(func_def_47, type, pushprop_lem3v2_lthm: $o).
thf(func_def_48, type, hoasinduction_lem3b_lthm: $o).
thf(func_def_49, type, ulamvarind: $o).
thf(func_def_50, type, induction: $o).
thf(func_def_51, type, hoasinduction_lem3a_lthm: $o).
thf(func_def_52, type, termmset_gthm: $o).
thf(func_def_53, type, hoasinduction_lem3aa: $o).
thf(func_def_54, type, pushprop_lem1v2_gthm: $o).
thf(func_def_55, type, hoaslamnotap_gthm: $o).
thf(func_def_56, type, hoaslamnotvar_gthm: $o).
thf(func_def_57, type, hoasinduction_lem3b_gthm: $o).
thf(func_def_58, type, pushprop_lem2v2: $o).
thf(func_def_59, type, hoasinduction_lem3a_gthm: $o).
thf(func_def_60, type, axclos: $o).
thf(func_def_61, type, axassoc: $o).
thf(func_def_62, type, hoasinduction_lem2v2: $o).
thf(func_def_63, type, pushprop_lthm: $o).
thf(func_def_64, type, apinj2: $o).
thf(func_def_65, type, apinj1: $o).
thf(func_def_66, type, hoasapinj2_lthm: $o).
thf(func_def_67, type, hoasinduction_lem3v2a: $o).
thf(func_def_68, type, hoasapinj1_lthm: $o).
thf(func_def_69, type, hoaslaminj_lthm: $o).
thf(func_def_70, type, axvarcons: $o).
thf(func_def_71, type, hoaslam: (subst > (subst > term > term) > term)).
thf(func_def_72, type, axscons: $o).
thf(func_def_73, type, hoasinduction_lem2v2_gthm: $o).
thf(func_def_74, type, axidr: $o).
thf(func_def_75, type, pushprop_lem1: $o).
thf(func_def_76, type, laminj: $o).
thf(func_def_77, type, hoasinduction_lem3_lthm: $o).
thf(func_def_78, type, pushprop_lem0: $o).
thf(func_def_79, type, pushprop_gthm: $o).
thf(func_def_80, type, axabs: $o).
thf(func_def_81, type, hoasinduction_lem3v2a_lthm: $o).
thf(func_def_82, type, hoasinduction_lem2_lthm: $o).
thf(func_def_83, type, hoasapinj2_gthm: $o).
thf(func_def_84, type, hoasinduction_p_and_p_prime: ((subst > term > subst > $o) > (term > $o) > $o)).
thf(func_def_85, type, hoasinduction_lem1_lthm: $o).
thf(func_def_86, type, lamnotap: $o).
thf(func_def_87, type, hoasapinj1_gthm: $o).
thf(func_def_88, type, hoaslamnotvar: $o).
thf(func_def_89, type, axidl: $o).
thf(func_def_90, type, hoaslaminj_gthm: $o).
thf(func_def_91, type, induction2_lthm: $o).
thf(func_def_92, type, hoasinduction_lem0_lthm: $o).
thf(func_def_93, type, substmonoid_lthm: $o).
thf(func_def_94, type, pushprop: $o).
thf(func_def_95, type, hoasinduction_lem3_gthm: $o).
thf(func_def_96, type, hoasinduction_lem2_gthm: $o).
thf(func_def_97, type, hoasinduction_lem3b: $o).
thf(func_def_98, type, substmonoid: $o).
thf(func_def_99, type, lamnotvar: $o).
thf(func_def_100, type, hoasinduction_lem3a: $o).
thf(func_def_101, type, hoasinduction_lem1_gthm: $o).
thf(func_def_102, type, hoasinduction_no_psi_cond: $o).
thf(func_def_103, type, induction2_gthm: $o).
thf(func_def_104, type, pushprop_lem2v2_lthm: $o).
thf(func_def_105, type, hoasvar: (subst > term > subst > $o)).
thf(func_def_106, type, hoaslamnotap: $o).
thf(func_def_107, type, substmonoid_gthm: $o).
thf(func_def_108, type, ulamvarsh: $o).
thf(func_def_109, type, induction2: $o).
thf(func_def_110, type, pushprop_lem3v2: $o).
thf(func_def_111, type, pushprop_lem2v2_gthm: $o).
thf(func_def_112, type, pushprop_lem1_lthm: $o).
thf(func_def_113, type, hoasinduction_lem3v2: $o).
thf(func_def_114, type, axshiftcons: $o).
thf(func_def_115, type, termmset: $o).
thf(func_def_116, type, pushprop_lem0_lthm: $o).
thf(func_def_117, type, hoasapnotvar_lthm: $o).
thf(func_def_118, type, hoasinduction_lem3v2_lthm: $o).
thf(func_def_119, type, pushprop_p_and_p_prime: (term > subst > (term > $o) > (term > $o) > $o)).
thf(func_def_120, type, axvarid: $o).
thf(func_def_121, type, hoasinduction_lthm_3: $o).
thf(func_def_122, type, d2term: (d_term > term)).
thf(func_def_123, type, d2subst: (d_subst > subst)).
thf(func_def_124, type, d_one: d_term).
thf(func_def_125, type, d_id: d_subst).
thf(func_def_129, type, vPI: !>[X0: $tType]:(((X0 > $o) > $o))).
thf(func_def_130, type, db2: !>[X0: $tType]:(X0)).
thf(func_def_131, type, db0: !>[X0: $tType]:(X0)).
thf(func_def_132, type, db4: !>[X0: $tType]:(X0)).
thf(func_def_133, type, db3: !>[X0: $tType]:(X0)).
thf(func_def_134, type, db1: !>[X0: $tType]:(X0)).
thf(func_def_135, type, vEQ: !>[X0: $tType]:((X0 > X0 > $o))).
thf(func_def_136, type, vLAM: !>[X0: $tType, X1: $tType]:((X1) > (X0 > X1))).
thf(func_def_137, type, sP0: ((subst > term > subst > $o) > $o)).
thf(func_def_138, type, sP1: $o).
thf(func_def_139, type, sP2: $o).
thf(func_def_140, type, sP3: ((subst > term > subst > $o) > $o)).
thf(func_def_141, type, sP4: $o).
thf(func_def_142, type, sP5: $o).
thf(func_def_143, type, sP6: ((subst > term > subst > $o) > $o)).
thf(func_def_144, type, sP7: $o).
thf(func_def_145, type, sP8: $o).
thf(func_def_146, type, sP9: $o).
thf(func_def_147, type, sK10: (subst > term > subst > $o)).
thf(func_def_148, type, sK11: term).
thf(func_def_149, type, sK12: ((subst > term > term) > term)).
thf(func_def_150, type, sK13: ((subst > term > term) > subst)).
thf(func_def_151, type, sK14: ((subst > term > term) > subst)).
thf(func_def_152, type, sK15: ((subst > term > term) > term)).
thf(func_def_153, type, sK16: ((subst > term > subst > $o) > subst)).
thf(func_def_154, type, sK17: ((subst > term > subst > $o) > subst)).
thf(func_def_155, type, sK18: ((subst > term > subst > $o) > subst)).
thf(func_def_156, type, sK19: ((subst > term > subst > $o) > term)).
thf(func_def_157, type, sK20: ((subst > term > subst > $o) > term)).
thf(func_def_158, type, sK21: ((subst > term > subst > $o) > subst)).
thf(func_def_159, type, sK22: ((subst > term > subst > $o) > subst)).
thf(func_def_160, type, sK23: ((subst > term > subst > $o) > subst)).
thf(func_def_161, type, sK24: (term > (subst > term > subst > $o) > term)).
thf(func_def_162, type, sK25: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_163, type, sK26: (term > (subst > term > subst > $o) > term)).
thf(func_def_164, type, sK27: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_165, type, sK28: ((subst > term > subst > $o) > subst)).
thf(func_def_166, type, sK29: ((subst > term > subst > $o) > subst)).
thf(func_def_167, type, sK30: ((subst > term > subst > $o) > term)).
thf(func_def_168, type, sK31: ((subst > term > subst > $o) > subst)).
thf(func_def_169, type, sK32: ((subst > term > subst > $o) > subst)).
thf(func_def_170, type, sK33: ((subst > term > subst > $o) > subst)).
thf(func_def_171, type, sK34: ((subst > term > subst > $o) > subst)).
thf(func_def_172, type, sK35: ((subst > term > subst > $o) > term)).
thf(func_def_173, type, sK36: (subst > term > subst > $o)).
thf(func_def_174, type, sK37: term).
thf(func_def_175, type, sK38: ((subst > term > term) > term)).
thf(func_def_176, type, sK39: ((subst > term > term) > term)).
thf(func_def_177, type, sK40: ((subst > term > term) > subst)).
thf(func_def_178, type, sK41: ((subst > term > term) > subst)).
thf(func_def_179, type, sK42: (subst > term > subst > $o)).
thf(func_def_180, type, sK43: term).
thf(func_def_181, type, sK44: ((subst > term > term) > term)).
thf(func_def_182, type, sK45: ((subst > term > term) > term)).
thf(func_def_183, type, sK46: ((subst > term > term) > subst)).
thf(func_def_184, type, sK47: ((subst > term > term) > subst)).
thf(func_def_185, type, sK48: ((subst > term > subst > $o) > term)).
thf(func_def_186, type, sK49: ((subst > term > subst > $o) > subst)).
thf(func_def_187, type, sK50: ((subst > term > subst > $o) > subst)).
thf(func_def_188, type, sK51: ((subst > term > subst > $o) > subst)).
thf(func_def_189, type, sK52: ((subst > term > subst > $o) > term)).
thf(func_def_190, type, sK53: ((subst > term > subst > $o) > subst)).
thf(func_def_191, type, sK54: ((subst > term > subst > $o) > subst)).
thf(func_def_192, type, sK55: ((subst > term > subst > $o) > subst)).
thf(func_def_193, type, sK56: ((subst > term > subst > $o) > term)).
thf(func_def_194, type, sK57: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_195, type, sK58: ((subst > term > subst > $o) > term)).
thf(func_def_196, type, sK59: ((subst > term > subst > $o) > term)).
thf(func_def_197, type, sK60: (term > $o)).
thf(func_def_198, type, sK61: term).
thf(func_def_199, type, sK62: (term > term)).
thf(func_def_200, type, sK63: ((term > $o) > term)).
thf(func_def_201, type, sK64: ((term > $o) > term)).
thf(func_def_202, type, sK65: ((term > $o) > term)).
thf(func_def_203, type, sK66: (subst > (term > $o) > term)).
thf(func_def_204, type, sK67: term).
thf(func_def_205, type, sK68: ((term > $o) > term)).
thf(func_def_206, type, sK69: ((term > $o) > term)).
thf(func_def_207, type, sK70: ((term > $o) > term)).
thf(func_def_208, type, sK71: ((term > $o) > term)).
thf(func_def_209, type, sK72: term).
thf(func_def_210, type, sK73: (term > $o)).
thf(func_def_211, type, sK74: subst).
thf(func_def_212, type, sK75: (term > term)).
thf(func_def_213, type, sK76: term).
thf(func_def_214, type, sK77: (subst > term > subst > $o)).
thf(func_def_215, type, sK78: ((subst > term > term) > subst)).
thf(func_def_216, type, sK79: ((subst > term > term) > subst)).
thf(func_def_217, type, sK80: ((subst > term > term) > term)).
thf(func_def_218, type, sK81: ((subst > term > term) > term)).
thf(func_def_219, type, sK82: ((subst > term > subst > $o) > term)).
thf(func_def_220, type, sK83: ((subst > term > subst > $o) > term)).
thf(func_def_221, type, sK84: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_222, type, sK85: ((subst > term > subst > $o) > term)).
thf(func_def_223, type, sK86: ((subst > term > subst > $o) > term)).
thf(func_def_224, type, sK87: term).
thf(func_def_225, type, sK88: (term > $o)).
thf(func_def_226, type, sK89: subst).
thf(func_def_227, type, sK90: (term > term)).
thf(func_def_228, type, sK91: ((term > $o) > term)).
thf(func_def_229, type, sK92: ((term > $o) > term)).
thf(func_def_230, type, sK93: ((term > $o) > term)).
thf(func_def_231, type, sK94: ((term > $o) > term)).
thf(func_def_232, type, sK95: subst).
thf(func_def_233, type, sK96: term).
thf(func_def_234, type, sK97: ((term > $o) > term)).
thf(func_def_235, type, sK98: ((term > $o) > term)).
thf(func_def_236, type, sK99: ((term > $o) > term)).
thf(func_def_237, type, sK100: (subst > (term > $o) > term)).
thf(func_def_238, type, sK101: term).
thf(func_def_239, type, sK102: (term > $o)).
thf(func_def_240, type, sK103: term).
thf(func_def_241, type, sK104: subst).
thf(func_def_242, type, sK105: subst).
thf(func_def_243, type, sK106: term).
thf(func_def_244, type, sK107: (subst > term > subst > $o)).
thf(func_def_245, type, sK108: ((subst > term > term) > term)).
thf(func_def_246, type, sK109: ((subst > term > term) > term)).
thf(func_def_247, type, sK110: ((subst > term > term) > subst)).
thf(func_def_248, type, sK111: ((subst > term > term) > subst)).
thf(func_def_249, type, sK112: ((subst > term > subst > $o) > subst)).
thf(func_def_250, type, sK113: ((subst > term > subst > $o) > subst)).
thf(func_def_251, type, sK114: ((subst > term > subst > $o) > subst)).
thf(func_def_252, type, sK115: ((subst > term > subst > $o) > term)).
thf(func_def_253, type, sK116: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_254, type, sK117: ((subst > term > subst > $o) > term)).
thf(func_def_255, type, sK118: ((subst > term > subst > $o) > subst)).
thf(func_def_256, type, sK119: ((subst > term > subst > $o) > term)).
thf(func_def_257, type, sK120: ((subst > term > subst > $o) > subst)).
thf(func_def_258, type, sK121: ((subst > term > subst > $o) > subst)).
thf(func_def_259, type, sK122: ((subst > term > subst > $o) > term)).
thf(func_def_260, type, sK123: ((subst > term > subst > $o) > term)).
thf(func_def_261, type, sK124: term).
thf(func_def_262, type, sK125: term).
thf(func_def_263, type, sK126: (subst > term > subst > $o)).
thf(func_def_264, type, sK127: ((subst > term > term) > term)).
thf(func_def_265, type, sK128: ((subst > term > term) > subst)).
thf(func_def_266, type, sK129: ((subst > term > term) > term)).
thf(func_def_267, type, sK130: ((subst > term > term) > subst)).
thf(func_def_268, type, sK131: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_269, type, sK132: ((subst > term > subst > $o) > term > term)).
thf(func_def_270, type, sK133: ((subst > term > subst > $o) > term > $o)).
thf(func_def_271, type, sK134: (subst > term > subst > $o)).
thf(func_def_272, type, sK135: ((term > $o) > term)).
thf(func_def_273, type, sK136: subst).
thf(func_def_274, type, sK137: (subst > term > term)).
thf(func_def_275, type, sK138: (subst > term > term)).
thf(func_def_276, type, sK139: term).
thf(func_def_277, type, sK140: ((subst > term > term) > subst)).
thf(func_def_278, type, sK141: ((subst > term > term) > subst)).
thf(func_def_279, type, sK142: ((subst > term > term) > term)).
thf(func_def_280, type, sK143: ((subst > term > term) > subst)).
thf(func_def_281, type, sK144: ((subst > term > term) > term)).
thf(func_def_282, type, sK145: ((subst > term > term) > subst)).
thf(func_def_283, type, sK146: term).
thf(func_def_284, type, sK147: term).
thf(func_def_285, type, sK148: subst).
thf(func_def_286, type, sK149: term).
thf(func_def_287, type, sK150: term).
thf(func_def_288, type, sK151: subst).
thf(func_def_289, type, sK152: ((subst > term > term) > subst)).
thf(func_def_290, type, sK153: ((subst > term > term) > term)).
thf(func_def_291, type, sK154: ((subst > term > term) > subst)).
thf(func_def_292, type, sK155: ((subst > term > term) > term)).
thf(func_def_293, type, sK156: ((subst > term > term) > subst)).
thf(func_def_294, type, sK157: ((subst > term > term) > subst)).
thf(func_def_295, type, sK158: subst).
thf(func_def_296, type, sK159: (subst > term > term)).
thf(func_def_297, type, sK160: term).
thf(func_def_298, type, sK161: (subst > term > term)).
thf(func_def_299, type, sK162: (term > d_term)).
thf(func_def_300, type, sK163: (subst > term > subst > $o)).
thf(func_def_301, type, sK164: term).
thf(func_def_302, type, sK165: ((subst > term > term) > term)).
thf(func_def_303, type, sK166: ((subst > term > term) > subst)).
thf(func_def_304, type, sK167: ((subst > term > term) > subst)).
thf(func_def_305, type, sK168: ((subst > term > term) > term)).
thf(func_def_306, type, sK169: ((subst > term > subst > $o) > term)).
thf(func_def_307, type, sK170: ((subst > term > subst > $o) > term)).
thf(func_def_308, type, sK171: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_309, type, sK172: subst).
thf(func_def_310, type, sK173: term).
thf(func_def_311, type, sK174: term).
thf(func_def_312, type, sK175: term).
thf(func_def_313, type, sK176: (subst > term > subst > $o)).
thf(func_def_314, type, sK177: term).
thf(func_def_315, type, sK178: term).
thf(func_def_316, type, sK179: ((subst > term > subst > $o) > term)).
thf(func_def_317, type, sK180: ((subst > term > subst > $o) > term)).
thf(func_def_318, type, sK181: ((subst > term > subst > $o) > subst)).
thf(func_def_319, type, sK182: ((subst > term > subst > $o) > subst)).
thf(func_def_320, type, sK183: ((subst > term > subst > $o) > term)).
thf(func_def_321, type, sK184: ((subst > term > subst > $o) > subst)).
thf(func_def_322, type, sK185: ((subst > term > subst > $o) > subst)).
thf(func_def_323, type, sK186: ((subst > term > subst > $o) > subst)).
thf(func_def_324, type, sK187: ((subst > term > subst > $o) > term)).
thf(func_def_325, type, sK188: ((subst > term > subst > $o) > subst)).
thf(func_def_326, type, sK189: ((term > $o) > term)).
thf(func_def_327, type, sK190: ((term > $o) > term)).
thf(func_def_328, type, sK191: ((term > $o) > term)).
thf(func_def_329, type, sK192: ((term > $o) > term)).
thf(func_def_330, type, sK193: ((subst > term > subst > $o) > subst)).
thf(func_def_331, type, sK194: ((subst > term > subst > $o) > term)).
thf(func_def_332, type, sK195: ((subst > term > subst > $o) > subst)).
thf(func_def_333, type, sK196: ((subst > term > subst > $o) > subst)).
thf(func_def_334, type, sK197: ((subst > term > subst > $o) > term)).
thf(func_def_335, type, sK198: ((subst > term > subst > $o) > term)).
thf(func_def_336, type, sK199: ((subst > term > subst > $o) > subst)).
thf(func_def_337, type, sK200: ((subst > term > subst > $o) > subst)).
thf(func_def_338, type, sK201: ((subst > term > subst > $o) > term)).
thf(func_def_339, type, sK202: ((subst > term > subst > $o) > subst)).
thf(func_def_340, type, sK203: term).
thf(func_def_341, type, sK204: (term > $o)).
thf(func_def_342, type, sK205: (term > term)).
thf(func_def_343, type, sK206: term).
thf(func_def_344, type, sK207: term).
thf(func_def_345, type, sK208: (subst > term > subst > $o)).
thf(func_def_346, type, sK209: term).
thf(func_def_347, type, sK210: term).
thf(func_def_348, type, sK211: term).
thf(func_def_349, type, sK212: term).
thf(func_def_350, type, sK213: ((subst > term > subst > $o) > term)).
thf(func_def_351, type, sK214: ((subst > term > subst > $o) > term)).
thf(func_def_352, type, sK215: ((subst > term > subst > $o) > term)).
thf(func_def_353, type, sK216: ((subst > term > subst > $o) > subst)).
thf(func_def_354, type, sK217: ((subst > term > subst > $o) > subst)).
thf(func_def_355, type, sK218: ((subst > term > subst > $o) > subst)).
thf(func_def_356, type, sK219: ((subst > term > subst > $o) > subst)).
thf(func_def_357, type, sK220: ((subst > term > subst > $o) > term)).
thf(func_def_358, type, sK221: ((subst > term > subst > $o) > subst)).
thf(func_def_359, type, sK222: ((subst > term > subst > $o) > subst)).
thf(func_def_360, type, sK223: ((subst > term > subst > $o) > (term > $o) > term)).
thf(func_def_361, type, sK224: term).
thf(func_def_362, type, sK225: (term > $o)).
thf(func_def_363, type, sK226: term).
thf(func_def_364, type, sK227: (subst > term > subst > $o)).
thf(func_def_365, type, sK228: term).
thf(func_def_366, type, sK229: term).
thf(func_def_367, type, sK230: ((subst > term > subst > $o) > term > term)).
thf(func_def_368, type, sK231: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_369, type, sK232: term).
thf(func_def_370, type, sK233: (subst > term > subst > $o)).
thf(func_def_371, type, sK234: ((subst > term > term) > term)).
thf(func_def_372, type, sK235: ((subst > term > term) > subst)).
thf(func_def_373, type, sK236: ((subst > term > term) > term)).
thf(func_def_374, type, sK237: ((subst > term > term) > subst)).
thf(func_def_375, type, sK238: term).
thf(func_def_376, type, sK239: (subst > term > subst > $o)).
thf(func_def_377, type, sK240: ((subst > term > term) > subst)).
thf(func_def_378, type, sK241: ((subst > term > term) > subst)).
thf(func_def_379, type, sK242: ((subst > term > term) > term)).
thf(func_def_380, type, sK243: ((subst > term > term) > term)).
thf(func_def_381, type, sK244: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_382, type, sK245: ((subst > term > subst > $o) > term > term)).
thf(func_def_383, type, sK246: (subst > term > subst > $o)).
thf(func_def_384, type, sK247: (term > $o)).
thf(func_def_385, type, sK248: term).
thf(func_def_386, type, sK249: ((subst > term > term) > term)).
thf(func_def_387, type, sK250: ((subst > term > term) > subst)).
thf(func_def_388, type, sK251: ((subst > term > term) > subst)).
thf(func_def_389, type, sK252: ((subst > term > term) > term)).
thf(func_def_390, type, sK253: ((term > $o) > (subst > term > subst > $o) > term)).
thf(func_def_391, type, sK254: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_392, type, sK255: (term > (term > $o) > term)).
thf(func_def_393, type, sK256: ((term > $o) > term)).
thf(func_def_394, type, sK257: ((term > $o) > term)).
thf(func_def_395, type, sK258: ((term > $o) > term)).
thf(func_def_396, type, sK259: ((term > $o) > term)).
thf(func_def_397, type, sK260: ((subst > term > subst > $o) > term > $o)).
thf(func_def_398, type, sK261: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_399, type, sK262: ((term > $o) > term > term)).
thf(func_def_400, type, sK263: ((term > $o) > (subst > term > subst > $o) > term)).
thf(func_def_401, type, sK264: term).
thf(func_def_402, type, sK265: (term > $o)).
thf(func_def_403, type, sK266: (term > term)).
thf(func_def_404, type, sK267: (subst > term > subst > $o)).
thf(func_def_405, type, sK268: ((term > $o) > term)).
thf(func_def_406, type, sK269: term).
thf(func_def_407, type, sK270: (subst > term > subst > $o)).
thf(func_def_408, type, sK271: (term > $o)).
thf(func_def_409, type, sK272: ((subst > term > term) > term)).
thf(func_def_410, type, sK273: ((subst > term > term) > subst)).
thf(func_def_411, type, sK274: ((subst > term > term) > term)).
thf(func_def_412, type, sK275: ((subst > term > term) > subst)).
thf(func_def_413, type, sK276: term).
thf(func_def_414, type, sK277: (subst > term > subst > $o)).
thf(func_def_415, type, sK278: term).
thf(func_def_416, type, sK279: ((subst > term > term) > subst)).
thf(func_def_417, type, sK280: ((subst > term > term) > subst)).
thf(func_def_418, type, sK281: ((subst > term > term) > term)).
thf(func_def_419, type, sK282: ((subst > term > term) > term)).
thf(func_def_420, type, sK283: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_421, type, sK284: ((subst > term > subst > $o) > subst)).
thf(func_def_422, type, sK285: ((subst > term > subst > $o) > subst)).
thf(func_def_423, type, sK286: ((subst > term > subst > $o) > subst)).
thf(func_def_424, type, sK287: ((subst > term > subst > $o) > term)).
thf(func_def_425, type, sK288: ((subst > term > subst > $o) > subst)).
thf(func_def_426, type, sK289: ((subst > term > subst > $o) > subst)).
thf(func_def_427, type, sK290: ((subst > term > subst > $o) > subst)).
thf(func_def_428, type, sK291: ((subst > term > subst > $o) > term)).
thf(func_def_429, type, sK292: (term > (subst > term > subst > $o) > term)).
thf(func_def_430, type, sK293: (subst > term > subst > $o)).
thf(func_def_431, type, sK294: ((term > $o) > term)).
thf(func_def_432, type, sK295: ((subst > term > subst > $o) > term > $o)).
thf(func_def_433, type, sK296: term).
thf(func_def_434, type, sK297: subst).
thf(func_def_435, type, sK298: term).
thf(func_def_436, type, sK299: subst).
thf(func_def_437, type, sK300: term).
thf(func_def_438, type, sK301: (term > $o)).
thf(func_def_439, type, sK302: (term > $o)).
thf(func_def_440, type, sK303: subst).
thf(func_def_441, type, sK304: term).
thf(func_def_442, type, sK305: term).
thf(func_def_443, type, sK306: term).
thf(func_def_444, type, sK307: (term > $o)).
thf(func_def_445, type, sK308: term).
thf(func_def_446, type, sK309: ((term > $o) > term)).
thf(func_def_447, type, sK310: ((term > $o) > term)).
thf(func_def_448, type, sK311: ((term > $o) > term)).
thf(func_def_449, type, sK312: ((term > $o) > term)).
thf(func_def_450, type, sK313: subst).
thf(func_def_451, type, sK314: (subst > d_subst)).
thf(func_def_452, type, sK315: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_453, type, sK316: ((subst > term > subst > $o) > term)).
thf(func_def_454, type, sK317: ((subst > term > subst > $o) > subst)).
thf(func_def_455, type, sK318: ((subst > term > subst > $o) > subst)).
thf(func_def_456, type, sK319: ((subst > term > subst > $o) > term)).
thf(func_def_457, type, sK320: ((subst > term > subst > $o) > subst)).
thf(func_def_458, type, sK321: ((subst > term > subst > $o) > subst)).
thf(func_def_459, type, sK322: ((subst > term > subst > $o) > subst)).
thf(func_def_460, type, sK323: ((subst > term > subst > $o) > subst)).
thf(func_def_461, type, sK324: ((subst > term > subst > $o) > term)).
thf(func_def_462, type, sK325: (subst > term > subst > $o)).
thf(func_def_463, type, sK326: term).
thf(func_def_464, type, sK327: ((subst > term > term) > subst)).
thf(func_def_465, type, sK328: ((subst > term > term) > term)).
thf(func_def_466, type, sK329: ((subst > term > term) > subst)).
thf(func_def_467, type, sK330: ((subst > term > term) > term)).
thf(func_def_468, type, sK331: (subst > term > subst > $o)).
thf(func_def_469, type, sK332: term).
thf(func_def_470, type, sK333: ((subst > term > term) > term)).
thf(func_def_471, type, sK334: ((subst > term > term) > term)).
thf(func_def_472, type, sK335: ((subst > term > term) > subst)).
thf(func_def_473, type, sK336: ((subst > term > term) > subst)).
thf(func_def_474, type, sK337: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_475, type, sK338: (term > (subst > term > subst > $o) > term)).
thf(func_def_476, type, sK339: ((term > $o) > term)).
thf(func_def_477, type, sK340: ((term > $o) > term)).
thf(func_def_478, type, sK341: ((term > $o) > term)).
thf(func_def_479, type, sK342: ((term > $o) > term)).
thf(func_def_480, type, sK343: term).
thf(func_def_481, type, sK344: (term > $o)).
thf(func_def_482, type, sK345: (term > term)).
thf(func_def_483, type, sK346: ((term > $o) > subst > term > term > $o)).
thf(func_def_484, type, sK347: term).
thf(func_def_485, type, sK348: subst).
thf(func_def_486, type, sK349: (term > $o)).
thf(func_def_487, type, sK350: ((term > $o) > term)).
thf(func_def_488, type, sK351: (term > subst > term > term)).
thf(func_def_489, type, sK352: term).
thf(func_def_490, type, sK353: ((subst > term > term) > subst)).
thf(func_def_491, type, sK354: ((subst > term > term) > term)).
thf(func_def_492, type, sK355: ((term > $o) > term)).
thf(func_def_493, type, sK356: ((term > $o) > term)).
thf(func_def_494, type, sK357: ((term > $o) > term)).
thf(func_def_495, type, sK358: ((term > $o) > term)).
thf(func_def_496, type, sK359: ((subst > term > subst > $o) > term > $o)).
thf(func_def_497, type, sK360: ((term > $o) > (subst > term > subst > $o) > term)).
thf(func_def_498, type, sK361: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_499, type, sK362: ((term > $o) > term > term)).
thf(func_def_500, type, sK363: (term > $o)).
thf(func_def_501, type, sK364: term).
thf(func_def_502, type, sK365: (term > term)).
thf(func_def_503, type, sK366: (subst > term > subst > $o)).
thf(func_def_504, type, sK367: ((term > $o) > term)).
thf(func_def_505, type, sK368: term).
thf(func_def_506, type, sK369: term).
thf(func_def_507, type, sK370: (subst > term > subst > $o)).
thf(func_def_508, type, sK371: (term > $o)).
thf(func_def_509, type, sK372: ((subst > term > term) > subst)).
thf(func_def_510, type, sK373: ((subst > term > term) > subst)).
thf(func_def_511, type, sK374: ((subst > term > term) > term)).
thf(func_def_512, type, sK375: ((subst > term > term) > term)).
thf(func_def_513, type, sK376: subst).
thf(func_def_514, type, sK377: (term > $o)).
thf(func_def_515, type, sK378: term).
thf(func_def_516, type, sK379: (term > $o)).
thf(func_def_517, type, sK380: ((term > $o) > term > (term > $o) > subst > term)).
thf(func_def_518, type, sK381: subst).
thf(func_def_519, type, sK382: term).
thf(func_def_520, type, sK383: term).
thf(func_def_521, type, sK384: term).
thf(func_def_522, type, sK385: term).
thf(func_def_523, type, sK386: term).
thf(func_def_524, type, sK387: term).
thf(func_def_525, type, sK388: term).
thf(func_def_526, type, sK389: term).
thf(func_def_527, type, sK390: term).
thf(func_def_528, type, sK391: term).
thf(func_def_529, type, sK392: subst).
thf(func_def_530, type, sK393: (term > $o)).
thf(func_def_531, type, sK394: term).
thf(func_def_532, type, sK395: (term > $o)).
thf(func_def_533, type, sK396: ((term > $o) > term > (term > $o) > subst > term)).
thf(func_def_534, type, sK397: term).
thf(func_def_535, type, sK398: term).
thf(func_def_536, type, sK399: term).
thf(func_def_537, type, sK400: term).
thf(func_def_538, type, sK401: term).
thf(func_def_539, type, sK402: term).
thf(func_def_540, type, sK403: (subst > term > term)).
thf(func_def_541, type, sK404: term).
thf(func_def_542, type, sK405: term).
thf(func_def_543, type, sK406: ((subst > term > term) > subst)).
thf(func_def_544, type, sK407: ((subst > term > term) > subst)).
thf(func_def_545, type, sK408: ((subst > term > term) > term)).
thf(func_def_546, type, sK409: (term > subst > term > term)).
thf(func_def_547, type, sK410: term).
thf(func_def_548, type, sK411: ((subst > term > term) > subst)).
thf(func_def_549, type, sK412: ((subst > term > term) > term)).
thf(func_def_550, type, sK413: term).
thf(func_def_551, type, sK414: (term > subst > term > term)).
thf(func_def_552, type, sK415: (term > (subst > term > subst > $o) > term)).
thf(func_def_553, type, sK416: ((subst > term > subst > $o) > term)).
thf(func_def_554, type, sK417: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_555, type, sK418: (subst > term > subst > $o)).
thf(func_def_556, type, sK419: term).
thf(func_def_557, type, sK420: ((subst > term > term) > term > subst)).
thf(func_def_558, type, sK421: ((subst > term > term) > term > term)).
thf(func_def_559, type, sK422: ((subst > term > term) > term > subst)).
thf(func_def_560, type, sK423: ((subst > term > term) > term > subst)).
thf(func_def_561, type, sK424: ((subst > term > term) > term > term)).
thf(func_def_562, type, sK425: ((subst > term > term) > term > subst)).
thf(func_def_563, type, sK426: ((subst > term > term) > term)).
thf(func_def_564, type, sK427: term).
thf(func_def_565, type, sK428: subst).
thf(func_def_566, type, sK429: subst).
thf(func_def_567, type, sK430: subst).
thf(func_def_568, type, sK431: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_569, type, sK432: (term > (term > $o) > term)).
thf(func_def_570, type, sK433: ((subst > term > subst > $o) > (term > $o) > term)).
thf(func_def_571, type, sK434: term).
thf(func_def_572, type, sK435: term).
thf(func_def_573, type, sK436: ((subst > term > term) > subst)).
thf(func_def_574, type, sK437: ((subst > term > term) > term)).
thf(func_def_575, type, sK438: (term > $o)).
thf(func_def_576, type, sK439: term).
thf(func_def_577, type, sK440: (subst > term > subst > $o)).
thf(func_def_578, type, sK441: ((subst > term > term) > subst)).
thf(func_def_579, type, sK442: ((subst > term > term) > term)).
thf(func_def_580, type, sK443: ((subst > term > term) > subst)).
thf(func_def_581, type, sK444: ((subst > term > term) > term)).
thf(func_def_582, type, sK445: (term > subst > term > term)).
thf(func_def_583, type, sK446: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_584, type, sK447: (term > (subst > term > subst > $o) > term)).
thf(func_def_585, type, sK448: (subst > term > subst > $o)).
thf(func_def_586, type, sK449: term).
thf(func_def_587, type, sK450: ((subst > term > term) > term)).
thf(func_def_588, type, sK451: ((subst > term > term) > subst)).
thf(func_def_589, type, sK452: ((subst > term > term) > subst)).
thf(func_def_590, type, sK453: ((subst > term > term) > term)).
thf(func_def_591, type, sK454: term).
thf(func_def_592, type, sK455: term).
thf(func_def_593, type, sK456: term).
thf(func_def_594, type, sK457: term).
thf(func_def_595, type, sK458: ((term > $o) > term)).
thf(func_def_596, type, sK459: ((term > $o) > term)).
thf(func_def_597, type, sK460: ((term > $o) > term)).
thf(func_def_598, type, sK461: (subst > (term > $o) > term)).
thf(func_def_599, type, sK462: term).
thf(func_def_600, type, sK463: (term > $o)).
thf(func_def_601, type, sK464: subst).
thf(func_def_602, type, sK465: (term > term)).
thf(func_def_603, type, sK466: (term > $o)).
thf(func_def_604, type, sK467: term).
thf(func_def_605, type, sK468: (term > $o)).
thf(func_def_606, type, sK469: subst).
thf(func_def_607, type, sK470: term).
thf(func_def_608, type, sK471: term).
thf(func_def_609, type, sK472: term).
thf(func_def_610, type, sK473: term).
thf(func_def_611, type, sK474: term).
thf(func_def_612, type, sK475: subst).
thf(func_def_613, type, sK476: term).
thf(func_def_614, type, sK477: (term > subst > term > term)).
thf(func_def_615, type, sK478: term).
thf(func_def_616, type, sK479: subst).
thf(func_def_617, type, sK480: subst).
thf(func_def_618, type, sK481: subst).
thf(func_def_619, type, sK482: subst).
thf(func_def_620, type, sK483: term).
thf(func_def_621, type, sK484: term).
thf(func_def_622, type, sK485: term).
thf(func_def_623, type, sK486: term).
thf(func_def_624, type, sK487: term).
thf(func_def_625, type, sK488: term).
thf(func_def_626, type, sK489: term).
thf(func_def_627, type, sK490: term).
thf(func_def_628, type, sK491: ((subst > term > subst > $o) > (term > $o) > term)).
thf(func_def_629, type, sK492: ((subst > term > subst > $o) > subst)).
thf(func_def_630, type, sK493: ((subst > term > subst > $o) > subst)).
thf(func_def_631, type, sK494: ((subst > term > subst > $o) > subst)).
thf(func_def_632, type, sK495: ((subst > term > subst > $o) > term)).
thf(func_def_633, type, sK496: ((subst > term > subst > $o) > subst)).
thf(func_def_634, type, sK497: ((subst > term > subst > $o) > term)).
thf(func_def_635, type, sK498: ((subst > term > subst > $o) > subst)).
thf(func_def_636, type, sK499: ((subst > term > subst > $o) > subst)).
thf(func_def_637, type, sK500: (term > (term > $o) > term)).
thf(func_def_638, type, sK501: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_639, type, sK502: (term > $o)).
thf(func_def_640, type, sK503: term).
thf(func_def_641, type, sK504: (subst > term > subst > $o)).
thf(func_def_642, type, sK505: ((subst > term > term) > term)).
thf(func_def_643, type, sK506: ((subst > term > term) > term)).
thf(func_def_644, type, sK507: ((subst > term > term) > subst)).
thf(func_def_645, type, sK508: ((subst > term > term) > subst)).
thf(func_def_646, type, sK509: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_647, type, sK510: ((subst > term > subst > $o) > term > term)).
thf(func_def_648, type, sK511: term).
thf(func_def_649, type, sK512: (subst > term > subst > $o)).
thf(func_def_650, type, sK513: ((subst > term > term) > subst)).
thf(func_def_651, type, sK514: ((subst > term > term) > term)).
thf(func_def_652, type, sK515: ((subst > term > term) > subst)).
thf(func_def_653, type, sK516: ((subst > term > term) > term)).
thf(func_def_654, type, sK517: ((subst > term > subst > $o) > subst)).
thf(func_def_655, type, sK518: ((subst > term > subst > $o) > subst)).
thf(func_def_656, type, sK519: ((subst > term > subst > $o) > subst)).
thf(func_def_657, type, sK520: ((subst > term > subst > $o) > term)).
thf(func_def_658, type, sK521: ((subst > term > subst > $o) > subst)).
thf(func_def_659, type, sK522: ((subst > term > subst > $o) > subst)).
thf(func_def_660, type, sK523: ((subst > term > subst > $o) > term)).
thf(func_def_661, type, sK524: ((subst > term > subst > $o) > subst)).
thf(func_def_662, type, sK525: ((term > $o) > (subst > term > subst > $o) > term)).
thf(func_def_663, type, sK526: ((subst > term > subst > $o) > subst > term > term)).
thf(func_def_664, type, sK527: ((term > $o) > term > term)).
thf(func_def_665, type, sK528: term).
thf(func_def_666, type, sK529: (subst > term > subst > $o)).
thf(func_def_667, type, sK530: term).
thf(func_def_668, type, sK531: (term > $o)).
thf(func_def_669, type, sK532: ((subst > term > term) > term)).
thf(func_def_670, type, sK533: ((subst > term > term) > subst)).
thf(func_def_671, type, sK534: ((subst > term > term) > term)).
thf(func_def_672, type, sK535: ((subst > term > term) > subst)).
thf(func_def_673, type, sK536: subst).
thf(func_def_674, type, sK537: ((term > $o) > subst > term > term > $o)).
thf(func_def_675, type, sK538: term).
thf(func_def_676, type, sK539: subst).
thf(func_def_677, type, sK540: (term > $o)).
thf(func_def_678, type, sK541: ((term > $o) > term)).
thf(func_def_679, type, sK542: (subst > term > subst > $o)).
thf(func_def_680, type, sK543: (term > $o)).
thf(func_def_681, type, sK544: term).
thf(func_def_682, type, sK545: term).
thf(func_def_683, type, sK546: ((subst > term > subst > $o) > subst)).
thf(func_def_684, type, sK547: ((subst > term > subst > $o) > subst)).
thf(func_def_685, type, sK548: ((subst > term > subst > $o) > subst)).
thf(func_def_686, type, sK549: ((subst > term > subst > $o) > term)).
thf(func_def_687, type, sK550: ((subst > term > subst > $o) > term)).
thf(func_def_688, type, sK551: ((subst > term > subst > $o) > subst)).
thf(func_def_689, type, sK552: ((subst > term > subst > $o) > subst)).
thf(func_def_690, type, sK553: ((subst > term > subst > $o) > subst)).
thf(func_def_691, type, sK554: ((subst > term > subst > $o) > term)).
thf(func_def_692, type, sK555: ((subst > term > subst > $o) > term)).
thf(func_def_693, type, vNOT: ($o > $o)).
thf(f1,axiom,(
  ((^[X8 : (subst > term > subst > $o), X9 : (term > $o)] : (! [X10 : term] : (((X9 @ X10)) = ((X8 @ id @ X10 @ id))))) = hoasinduction_p_and_p_prime) & pushprop_lem3v2_lthm & (! [X32 : term,X8 : (subst > term > subst > $o)] : (~ ! [X18 : (subst > term > term)] : (~ ! [X12 : subst,X22 : subst,X11 : term] : (((sub @ (X18 @ X12 @ X11) @ X22)) = ((X18 @ (comp @ X12 @ X22) @ (sub @ X11 @ X22)))) | ~ ! [X11 : term] : (~(X8 @ id @ X11 @ id) | (X8 @ id @ (X18 @ id @ X11) @ id)) | (X8 @ id @ (lam @ (X18 @ sh @ one)) @ id)) | (X8 @ id @ (lam @ (sub @ X32 @ (push @ one @ sh))) @ id) | ~ ! [X15 : term] : (~(X8 @ id @ X15 @ id) | (X8 @ id @ (sub @ X32 @ (push @ X15 @ id)) @ id))) <=> hoasinduction_lem3aa) & (! [X12 : subst] : (X12 = ((comp @ X12 @ id))) <=> axidr) & (! [X12 : subst] : (X12 = ((comp @ id @ X12))) <=> axidl) & (induction2 <=> ! [X8 : (term > $o),X19 : term] : ((X8 @ X19) | ~ ! [X11 : term] : ((X8 @ X11) | ~(var @ X11)) | ~ ! [X15 : term,X11 : term] : ((X8 @ (ap @ X11 @ X15)) | ~(X8 @ X11) | ~(X8 @ X15)) | ~ ! [X11 : term] : (~ ! [X15 : term] : (~(X8 @ X15) | (X8 @ (sub @ X11 @ (push @ X15 @ id)))) | (X8 @ (lam @ X11))))) & hoasinduction_lem1v2_gthm & (! [X25 : term,X8 : (subst > term > subst > $o)] : (~ ! [X11 : term,X15 : term] : (~(X8 @ id @ X15 @ id) | (X8 @ id @ (ap @ (sub @ X11 @ id) @ X15) @ id) | ~(X8 @ id @ X11 @ id)) | ~ ! [X11 : term] : (~(var @ (sub @ X11 @ id)) | (X8 @ id @ X11 @ id)) | ~ ! [X12 : subst,X22 : subst,X23 : subst,X11 : term] : ((X8 @ (comp @ X12 @ X23) @ (sub @ X11 @ X23) @ X22) | ~(X8 @ X12 @ X11 @ (comp @ X23 @ X22))) | (X8 @ id @ X25 @ id) | ~ ! [X18 : (subst > term > term)] : (~ ! [X12 : subst,X22 : subst,X11 : term] : (((sub @ (X18 @ X12 @ X11) @ X22)) = ((X18 @ (comp @ X12 @ X22) @ (sub @ X11 @ X22)))) | (X8 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~ ! [X11 : term] : (~(X8 @ id @ X11 @ id) | (X8 @ id @ (X18 @ id @ X11) @ id))) | ~ ! [X12 : subst,X11 : term,X23 : subst,X22 : subst] : (~(X8 @ (comp @ X12 @ X23) @ (sub @ X11 @ X23) @ X22) | (X8 @ X12 @ X11 @ (comp @ X23 @ X22)))) <=> hoasinduction) & pushprop_lem3v2 & ! [X5 : d_subst] : (X5 = d_id) & (induction2_lthm <=> (! [X11 : term] : (X11 = ((sub @ X11 @ id))) => (! [X14 : subst,X8 : (term > $o),X13 : term] : (~ ! [X11 : term] : ((X8 @ (lam @ X11)) | ~ ! [X15 : term] : ((X8 @ (sub @ X11 @ (push @ X15 @ id))) | ~(X8 @ X15))) | ~ ! [X11 : term,X15 : term] : (~(X8 @ X15) | (X8 @ (ap @ X11 @ X15)) | ~(X8 @ X11)) | ~ ! [X15 : term] : ((X8 @ (sub @ X15 @ X14)) | ~(var @ X15)) | (X8 @ (sub @ X13 @ X14))) => ! [X19 : term,X8 : (term > $o)] : ((X8 @ X19) | ~ ! [X11 : term] : ((X8 @ X11) | ~(var @ X11)) | ~ ! [X15 : term,X11 : term] : ((X8 @ (ap @ X11 @ X15)) | ~(X8 @ X11) | ~(X8 @ X15)) | ~ ! [X11 : term] : ((X8 @ (lam @ X11)) | ~ ! [X15 : term] : (~(X8 @ X15) | (X8 @ (sub @ X11 @ (push @ X15 @ id))))))))) & (! [X8 : (term > $o),X14 : subst,X13 : term] : (~ ! [X15 : term] : (~(var @ X15) | (X8 @ (sub @ X15 @ X14))) | ~ ! [X11 : term,X15 : term] : ((X8 @ (ap @ X11 @ X15)) | ~(X8 @ X11) | ~(X8 @ X15)) | (X8 @ (sub @ X13 @ X14)) | ~ ! [X11 : term] : (~ ! [X15 : term] : (~(X8 @ X15) | (X8 @ (sub @ X11 @ (push @ X15 @ id)))) | (X8 @ (lam @ X11)))) <=> induction2lem) & ulamvarind & (hoasinduction_lem3 <=> ! [X8 : (subst > term > subst > $o),X24 : term] : ((X8 @ id @ (lam @ X24) @ id) | ~ ! [X18 : (subst > term > term)] : ((X8 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~ ! [X11 : term,X12 : subst,X22 : subst] : (((sub @ (X18 @ X12 @ X11) @ X22)) = ((X18 @ (comp @ X12 @ X22) @ (sub @ X11 @ X22)))) | ~ ! [X11 : term] : (~(X8 @ id @ X11 @ id) | (X8 @ id @ (X18 @ id @ X11) @ id))) | ~ ! [X11 : term,X12 : subst,X23 : subst,X22 : subst] : (~(X8 @ (comp @ X12 @ X23) @ (sub @ X11 @ X23) @ X22) | (X8 @ X12 @ X11 @ (comp @ X23 @ X22))) | ~ ! [X22 : subst,X11 : term,X12 : subst,X23 : subst] : ((X8 @ (comp @ X12 @ X23) @ (sub @ X11 @ X23) @ X22) | ~(X8 @ X12 @ X11 @ (comp @ X23 @ X22))) | ~ ! [X15 : term] : (~(X8 @ id @ X15 @ id) | (X8 @ id @ (sub @ X24 @ (push @ X15 @ id)) @ id)))) & pushprop_lthm & hoasapnotvar & hoaslamnotap_lthm & hoasinduction_lem3a_gthm & (sh = ((d2subst @ d_id))) & ((! [X12 : subst] : (X12 = ((comp @ id @ X12))) & ! [X12 : subst] : (X12 = ((comp @ X12 @ id)))) <=> substmonoid) & hoasinduction_lem1v2 & (hoasinduction_lem3v2a <=> ! [X9 : (term > $o),X26 : term,X8 : (subst > term > subst > $o)] : (~ ! [X10 : term] : (((X9 @ X10)) = ((X8 @ id @ X10 @ id))) | ~ ! [X18 : (subst > term > term)] : ((X8 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~ ! [X11 : term] : (~(X8 @ id @ X11 @ id) | (X8 @ id @ (X18 @ id @ X11) @ id)) | ~ ! [X12 : subst,X11 : term,X22 : subst] : (((sub @ (X18 @ X12 @ X11) @ X22)) = ((X18 @ (comp @ X12 @ X22) @ (sub @ X11 @ X22))))) | (X9 @ (lam @ X26)) | ~ ! [X15 : term] : ((X9 @ (sub @ X26 @ (push @ X15 @ id))) | ~(X9 @ X15)))) & pushprop_gthm & (((ap @ (d2term @ d_one) @ (d2term @ d_one))) = ((d2term @ d_one))) & ((! [X11 : term] : (X11 = ((sub @ X11 @ id))) => ! [X36 : term,X9 : (term > $o),X8 : (subst > term > subst > $o)] : ((X9 @ (lam @ X36)) | ~ ! [X18 : (subst > term > term)] : (~ ! [X22 : subst,X11 : term,X12 : subst] : (((sub @ (X18 @ X12 @ X11) @ X22)) = ((X18 @ (comp @ X12 @ X22) @ (sub @ X11 @ X22)))) | ~ ! [X11 : term] : (~(X8 @ id @ X11 @ id) | (X8 @ id @ (X18 @ id @ X11) @ id)) | (X8 @ id @ (lam @ (X18 @ sh @ one)) @ id)) | ~ ! [X10 : term] : (((X9 @ X10)) = ((X8 @ id @ X10 @ id))) | ~ ! [X15 : term] : ((X9 @ (sub @ X36 @ (push @ X15 @ id))) | ~(X9 @ X15)) | ~ ! [X12 : subst,X22 : subst,X23 : subst,X11 : term] : (~(X8 @ X12 @ X11 @ (comp @ X23 @ X22)) | (X8 @ (comp @ X12 @ X23) @ (sub @ X11 @ X23) @ X22)) | ~ ! [X23 : subst,X11 : term,X22 : subst,X12 : subst] : ((X8 @ X12 @ X11 @ (comp @ X23 @ X22)) | ~(X8 @ (comp @ X12 @ X23) @ (sub @ X11 @ X23) @ X22)))) <=> hoasinduction_lem3v2_lthm) & (pushprop_lem1_lthm <=> (! [X11 : term,X12 : subst] : (X11 = ((sub @ one @ (push @ X11 @ X12)))) => (! [X12 : subst,X11 : term] : (X12 = ((comp @ sh @ (push @ X11 @ X12)))) => ! [X11 : term,X8 : (term > $o),X23 : (term > $o),X15 : term,X12 : subst] : (~(X8 @ X11) | (X23 @ (sub @ X11 @ (push @ X15 @ X12))))))) & (hoasinduction_lem3v2 <=> ! [X8 : (subst > term > subst > $o),X9 : (term > $o),X36 : term] : (~ ! [X18 : (subst > term > term)] : ((X8 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~ ! [X22 : subst,X12 : subst,X11 : term] : (((sub @ (X18 @ X12 @ X11) @ X22)) = ((X18 @ (comp @ X12 @ X22) @ (sub @ X11 @ X22)))) | ~ ! [X11 : term] : (~(X8 @ id @ X11 @ id) | (X8 @ id @ (X18 @ id @ X11) @ id))) | ~ ! [X15 : term] : ((X9 @ (sub @ X36 @ (push @ X15 @ id))) | ~(X9 @ X15)) | ~ ! [X12 : subst,X22 : subst,X11 : term,X23 : subst] : ((X8 @ X12 @ X11 @ (comp @ X23 @ X22)) | ~(X8 @ (comp @ X12 @ X23) @ (sub @ X11 @ X23) @ X22)) | ~ ! [X12 : subst,X23 : subst,X22 : subst,X11 : term] : (~(X8 @ X12 @ X11 @ (comp @ X23 @ X22)) | (X8 @ (comp @ X12 @ X23) @ (sub @ X11 @ X23) @ X22)) | ~ ! [X10 : term] : (((X9 @ X10)) = ((X8 @ id @ X10 @ id))) | (X9 @ (lam @ X36)))) & ~(hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) & (! [X38 : term,X37 : term,X8 : (subst > term > subst > $o),X9 : (term > $o)] : (~(X9 @ X37) | ~ ! [X11 : term,X22 : subst,X12 : subst,X23 : subst] : (~(X8 @ X12 @ X11 @ (comp @ X23 @ X22)) | (X8 @ (comp @ X12 @ X23) @ (sub @ X11 @ X23) @ X22)) | ~ ! [X12 : subst,X11 : term,X22 : subst,X23 : subst] : ((X8 @ X12 @ X11 @ (comp @ X23 @ X22)) | ~(X8 @ (comp @ X12 @ X23) @ (sub @ X11 @ X23) @ X22)) | ~ ! [X10 : term] : (((X9 @ X10)) = ((X8 @ id @ X10 @ id))) | (X9 @ (ap @ X37 @ X38)) | ~ ! [X15 : term,X11 : term] : (~(X8 @ id @ X15 @ id) | ~(X8 @ id @ X11 @ id) | (X8 @ id @ (ap @ (sub @ X11 @ id) @ X15) @ id)) | ~(X9 @ X38)) <=> hoasinduction_lem2v2) & hoaslamnotap_gthm & ! [X1 : d_term] : (X1 = d_one) & ((! [X8 : (subst > term > subst > $o)] : ~ ! [X9 : (term > $o)] : ~ ! [X10 : term] : (((X9 @ X10)) = ((X8 @ id @ X10 @ id))) => (! [X8 : (term > $o),X19 : term] : (~ ! [X15 : term,X11 : term] : ((X8 @ (ap @ X11 @ X15)) | ~(X8 @ X11) | ~(X8 @ X15)) | ~ ! [X11 : term] : (~ ! [X15 : term] : (~(X8 @ X15) | (X8 @ (sub @ X11 @ (push @ X15 @ id)))) | (X8 @ (lam @ X11))) | (X8 @ X19) | ~ ! [X11 : term] : ((X8 @ X11) | ~(var @ X11))) => (! [X11 : term] : (X11 = ((sub @ X11 @ id))) => (! [X9 : (term > $o),X26 : term,X8 : (subst > term > subst > $o)] : (~ ! [X18 : (subst > term > term)] : (~ ! [X11 : term,X12 : subst,X22 : subst] : (((sub @ (X18 @ X12 @ X11) @ X22)) = ((X18 @ (comp @ X12 @ X22) @ (sub @ X11 @ X22)))) | (X8 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~ ! [X11 : term] : (~(X8 @ id @ X11 @ id) | (X8 @ id @ (X18 @ id @ X11) @ id))) | ~ ! [X15 : term] : ((X9 @ (sub @ X26 @ (push @ X15 @ id))) | ~(X9 @ X15)) | ~ ! [X10 : term] : (((X9 @ X10)) = ((X8 @ id @ X10 @ id))) | (X9 @ (lam @ X26))) => ! [X25 : term,X8 : (subst > term > subst > $o)] : (~ ! [X11 : term] : ((X8 @ id @ X11 @ id) | ~(var @ (sub @ X11 @ id))) | ~ ! [X11 : term,X15 : term] : ((X8 @ id @ (ap @ (sub @ X11 @ id) @ X15) @ id) | ~(X8 @ id @ X15 @ id) | ~(X8 @ id @ X11 @ id)) | ~ ! [X23 : subst,X22 : subst,X12 : subst,X11 : term] : ((X8 @ (comp @ X12 @ X23) @ (sub @ X11 @ X23) @ X22) | ~(X8 @ X12 @ X11 @ (comp @ X23 @ X22))) | ~ ! [X11 : term,X23 : subst,X22 : subst,X12 : subst] : ((X8 @ X12 @ X11 @ (comp @ X23 @ X22)) | ~(X8 @ (comp @ X12 @ X23) @ (sub @ X11 @ X23) @ X22)) | (X8 @ id @ X25 @ id) | ~ ! [X18 : (subst > term > term)] : (~ ! [X11 : term] : (~(X8 @ id @ X11 @ id) | (X8 @ id @ (X18 @ id @ X11) @ id)) | ~ ! [X11 : term,X22 : subst,X12 : subst] : (((sub @ (X18 @ X12 @ X11) @ X22)) = ((X18 @ (comp @ X12 @ X22) @ (sub @ X11 @ X22)))) | (X8 @ id @ (lam @ (X18 @ sh @ one)) @ id))))))) <=> hoasinduction_lthm_3) & (pushprop_lem0_lthm <=> ! [X12 : subst,X8 : (term > $o),X11 : term] : ~ ! [X9 : (term > $o)] : ~ ! [X10 : term] : (((X9 @ X10)) = ((X8 @ (sub @ X10 @ (push @ X11 @ X12)))))) & hoasinduction_lem3b_gthm & ((! [X11 : term] : (X11 = ((sub @ X11 @ id))) => ! [X11 : term] : (X11 = ((sub @ X11 @ id)))) <=> termmset_lthm) & hoasapnotvar_lthm & ((! [X19 : term,X8 : (term > $o)] : ((X8 @ X19) | ~ ! [X11 : term] : (~(var @ X11) | (X8 @ X11)) | ~ ! [X15 : term,X11 : term] : (~(X8 @ X15) | ~(X8 @ X11) | (X8 @ (ap @ X11 @ X15))) | ~ ! [X11 : term] : (~ ! [X15 : term] : ((X8 @ (sub @ X11 @ (push @ X15 @ id))) | ~(X8 @ X15)) | (X8 @ (lam @ X11)))) => (! [X21 : term,X20 : term,X8 : (subst > term > subst > $o)] : ((X8 @ id @ (ap @ X20 @ X21) @ id) | ~(X8 @ id @ X21 @ id) | ~ ! [X22 : subst,X12 : subst,X11 : term,X23 : subst] : ((X8 @ (comp @ X12 @ X23) @ (sub @ X11 @ X23) @ X22) | ~(X8 @ X12 @ X11 @ (comp @ X23 @ X22))) | ~ ! [X11 : term,X15 : term] : (~(X8 @ id @ X11 @ id) | ~(X8 @ id @ X15 @ id) | (X8 @ id @ (ap @ (sub @ X11 @ id) @ X15) @ id)) | ~(X8 @ id @ X20 @ id) | ~ ! [X22 : subst,X12 : subst,X23 : subst,X11 : term] : ((X8 @ X12 @ X11 @ (comp @ X23 @ X22)) | ~(X8 @ (comp @ X12 @ X23) @ (sub @ X11 @ X23) @ X22))) => (! [X24 : term,X8 : (subst > term > subst > $o)] : (~ ! [X15 : term] : ((X8 @ id @ (sub @ X24 @ (push @ X15 @ id)) @ id) | ~(X8 @ id @ X15 @ id)) | (X8 @ id @ (lam @ X24) @ id) | ~ ! [X11 : term,X12 : subst,X22 : subst,X23 : subst] : ((X8 @ X12 @ X11 @ (comp @ X23 @ X22)) | ~(X8 @ (comp @ X12 @ X23) @ (sub @ X11 @ X23) @ X22)) | ~ ! [X11 : term,X23 : subst,X22 : subst,X12 : subst] : ((X8 @ (comp @ X12 @ X23) @ (sub @ X11 @ X23) @ X22) | ~(X8 @ X12 @ X11 @ (comp @ X23 @ X22))) | ~ ! [X18 : (subst > term > term)] : (~ ! [X11 : term,X22 : subst,X12 : subst] : (((sub @ (X18 @ X12 @ X11) @ X22)) = ((X18 @ (comp @ X12 @ X22) @ (sub @ X11 @ X22)))) | ~ ! [X11 : term] : (~(X8 @ id @ X11 @ id) | (X8 @ id @ (X18 @ id @ X11) @ id)) | (X8 @ id @ (lam @ (X18 @ sh @ one)) @ id))) => ! [X8 : (subst > term > subst > $o),X25 : term] : (~ ! [X11 : term,X22 : subst,X12 : subst,X23 : subst] : (~(X8 @ (comp @ X12 @ X23) @ (sub @ X11 @ X23) @ X22) | (X8 @ X12 @ X11 @ (comp @ X23 @ X22))) | ~ ! [X15 : term,X11 : term] : (~(X8 @ id @ X15 @ id) | (X8 @ id @ (ap @ (sub @ X11 @ id) @ X15) @ id) | ~(X8 @ id @ X11 @ id)) | ~ ! [X22 : subst,X12 : subst,X23 : subst,X11 : term] : ((X8 @ (comp @ X12 @ X23) @ (sub @ X11 @ X23) @ X22) | ~(X8 @ X12 @ X11 @ (comp @ X23 @ X22))) | ~ ! [X11 : term] : (~(var @ (sub @ X11 @ id)) | (X8 @ id @ X11 @ id)) | ~ ! [X18 : (subst > term > term)] : (~ ! [X12 : subst,X22 : subst,X11 : term] : (((sub @ (X18 @ X12 @ X11) @ X22)) = ((X18 @ (comp @ X12 @ X22) @ (sub @ X11 @ X22)))) | ~ ! [X11 : term] : (~(X8 @ id @ X11 @ id) | (X8 @ id @ (X18 @ id @ X11) @ id)) | (X8 @ id @ (lam @ (X18 @ sh @ one)) @ id)) | (X8 @ id @ X25 @ id))))) <=> hoasinduction_lthm) & hoasapinj2_gthm & ~(var @ (d2term @ d_one)) & hoasapnotvar_gthm & hoasapinj1_gthm & (hoasinduction_lem2 <=> ! [X8 : (subst > term > subst > $o),X20 : term,X21 : term] : (~ ! [X15 : term,X11 : term] : (~(X8 @ id @ X11 @ id) | (X8 @ id @ (ap @ (sub @ X11 @ id) @ X15) @ id) | ~(X8 @ id @ X15 @ id)) | ~(X8 @ id @ X20 @ id) | ~ ! [X11 : term,X22 : subst,X23 : subst,X12 : subst] : (~(X8 @ X12 @ X11 @ (comp @ X23 @ X22)) | (X8 @ (comp @ X12 @ X23) @ (sub @ X11 @ X23) @ X22)) | ~ ! [X11 : term,X22 : subst,X12 : subst,X23 : subst] : (~(X8 @ (comp @ X12 @ X23) @ (sub @ X11 @ X23) @ X22) | (X8 @ X12 @ X11 @ (comp @ X23 @ X22))) | ~(X8 @ id @ X21 @ id) | (X8 @ id @ (ap @ X20 @ X21) @ id))) & induction2_gthm & ((! [X12 : subst,X11 : term] : (X11 = ((sub @ one @ (push @ X11 @ X12)))) => (! [X11 : term,X12 : subst] : (X12 = ((comp @ sh @ (push @ X11 @ X12)))) => (! [X12 : subst] : (X12 = ((comp @ X12 @ id))) => (! [X8 : (term > $o),X31 : term] : (~ ! [X11 : term] : (~(var @ X11) | (X8 @ X11)) | (X8 @ X31) | ~ ! [X11 : term] : ((X8 @ (lam @ X11)) | ~(X8 @ X11)) | ~ ! [X11 : term,X15 : term] : (~(X8 @ X15) | ~(X8 @ X11) | (X8 @ (ap @ X11 @ X15)))) => ! [X8 : (term > $o),X14 : subst,X13 : term] : (~ ! [X11 : term] : ((X8 @ (lam @ X11)) | ~ ! [X15 : term] : (~(X8 @ X15) | (X8 @ (sub @ X11 @ (push @ X15 @ id))))) | (X8 @ (sub @ X13 @ X14)) | ~ ! [X15 : term,X11 : term] : (~(X8 @ X15) | (X8 @ (ap @ X11 @ X15)) | ~(X8 @ X11)) | ~ ! [X15 : term] : (~(var @ X15) | (X8 @ (sub @ X15 @ X14)))))))) <=> induction2lem_lthm) & (pushprop_lem1v2 <=> ! [X9 : (term > $o),X8 : (term > $o),X12 : subst,X11 : term] : (~ ! [X10 : term] : (((X9 @ X10)) = ((X8 @ (sub @ X10 @ (push @ X11 @ X12))))) | (X9 @ one) | ~(X8 @ X11))) & (hoasinduction_lem3a <=> ! [X8 : (subst > term > subst > $o),X33 : term] : (~ ! [X18 : (subst > term > term)] : ((X8 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~ ! [X11 : term] : (~(X8 @ id @ X11 @ id) | (X8 @ id @ (X18 @ id @ X11) @ id)) | ~ ! [X22 : subst,X12 : subst,X11 : term] : (((sub @ (X18 @ X12 @ X11) @ X22)) = ((X18 @ (comp @ X12 @ X22) @ (sub @ X11 @ X22))))) | (X8 @ id @ (lam @ X33) @ id) | ~ ! [X15 : term] : ((X8 @ id @ (sub @ X33 @ (push @ X15 @ id)) @ id) | ~(X8 @ id @ X15 @ id)))) & (shinj <=> ! [X15 : term,X11 : term] : ((((sub @ X11 @ sh)) != ((sub @ X15 @ sh))) | (X11 = X15))) & ((! [X12 : subst,X11 : term] : (X11 = ((sub @ one @ (push @ X11 @ X12)))) => (! [X11 : term,X12 : subst] : (X12 = ((comp @ sh @ (push @ X11 @ X12)))) => (! [X15 : term,X11 : term] : ((X11 = X15) | (((lam @ X11)) != ((lam @ X15)))) => ! [X18 : (subst > term > term),X29 : subst,X30 : term,X28 : (subst > term > term)] : (~ ! [X11 : term,X12 : subst,X22 : subst] : (((sub @ (X18 @ X12 @ X11) @ X22)) = ((X18 @ (comp @ X12 @ X22) @ (sub @ X11 @ X22)))) | ~ ! [X12 : subst,X11 : term,X22 : subst] : (((sub @ (X28 @ X12 @ X11) @ X22)) = ((X28 @ (comp @ X12 @ X22) @ (sub @ X11 @ X22)))) | (((X18 @ X29 @ X30)) = ((X28 @ X29 @ X30))) | (((lam @ (X18 @ sh @ one))) != ((lam @ (X28 @ sh @ one)))))))) <=> hoaslaminj_lthm) & pushprop_lthm_orig & (hoasapinj2_lthm <=> (! [X11 : term,X15 : term,X16 : term,X17 : term] : ((X16 = X17) | (((ap @ X11 @ X16)) != ((ap @ X15 @ X17)))) => ! [X11 : term,X17 : term,X16 : term,X15 : term] : ((((ap @ (sub @ X11 @ id) @ X16)) != ((ap @ (sub @ X15 @ id) @ X17))) | (X16 = X17)))) & (hoasinduction_no_psi_cond <=> ! [X27 : term,X8 : (subst > term > subst > $o)] : (~ ! [X11 : term,X15 : term] : ((X8 @ id @ (ap @ (sub @ X11 @ id) @ X15) @ id) | ~(X8 @ id @ X15 @ id) | ~(X8 @ id @ X11 @ id)) | ~ ! [X18 : (subst > term > term)] : (~ ! [X11 : term] : (~(X8 @ id @ X11 @ id) | (X8 @ id @ (X18 @ id @ X11) @ id)) | ~ ! [X22 : subst,X11 : term,X12 : subst] : (((sub @ (X18 @ X12 @ X11) @ X22)) = ((X18 @ (comp @ X12 @ X22) @ (sub @ X11 @ X22)))) | (X8 @ id @ (lam @ (X18 @ sh @ one)) @ id)) | (X8 @ id @ X27 @ id))) & hoaslamnotvar_gthm & (hoasinduction_lem3aa_lthm <=> ! [X32 : term,X8 : (subst > term > subst > $o)] : (~ ! [X18 : (subst > term > term)] : ((X8 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~ ! [X11 : term] : (~(X8 @ id @ X11 @ id) | (X8 @ id @ (X18 @ id @ X11) @ id)) | ~ ! [X12 : subst,X22 : subst,X11 : term] : (((sub @ (X18 @ X12 @ X11) @ X22)) = ((X18 @ (comp @ X12 @ X22) @ (sub @ X11 @ X22))))) | (X8 @ id @ (lam @ (sub @ X32 @ (push @ one @ sh))) @ id) | ~ ! [X15 : term] : (~(X8 @ id @ X15 @ id) | (X8 @ id @ (sub @ X32 @ (push @ X15 @ id)) @ id)))) & axmap & hoasinduction_lem2_lthm & (hoasinduction_lem3b <=> ! [X15 : term] : ~ ! [X18 : (subst > term > term)] : (((X18 @ sh @ one)) != ((sub @ X15 @ (push @ one @ sh))))) & induction2lem_gthm & (apinj1 <=> ! [X17 : term,X11 : term,X15 : term,X16 : term] : ((((ap @ X11 @ X16)) != ((ap @ X15 @ X17))) | (X11 = X15))) & axapp & ~lamnotap & ((! [X11 : term] : (X11 = ((sub @ X11 @ id))) => (! [X32 : term,X8 : (subst > term > subst > $o)] : ((X8 @ id @ (lam @ (sub @ X32 @ (push @ one @ sh))) @ id) | ~ ! [X15 : term] : (~(X8 @ id @ X15 @ id) | (X8 @ id @ (sub @ X32 @ (push @ X15 @ id)) @ id)) | ~ ! [X18 : (subst > term > term)] : (~ ! [X11 : term] : ((X8 @ id @ (X18 @ id @ X11) @ id) | ~(X8 @ id @ X11 @ id)) | ~ ! [X11 : term,X22 : subst,X12 : subst] : (((sub @ (X18 @ X12 @ X11) @ X22)) = ((X18 @ (comp @ X12 @ X22) @ (sub @ X11 @ X22)))) | (X8 @ id @ (lam @ (X18 @ sh @ one)) @ id))) => ! [X8 : (subst > term > subst > $o),X24 : term] : (~ ! [X15 : term] : (~(X8 @ id @ X15 @ id) | (X8 @ id @ (sub @ X24 @ (push @ X15 @ id)) @ id)) | ~ ! [X18 : (subst > term > term)] : (~ ! [X11 : term] : (~(X8 @ id @ X11 @ id) | (X8 @ id @ (X18 @ id @ X11) @ id)) | (X8 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~ ! [X12 : subst,X22 : subst,X11 : term] : (((sub @ (X18 @ X12 @ X11) @ X22)) = ((X18 @ (comp @ X12 @ X22) @ (sub @ X11 @ X22))))) | ~ ! [X11 : term,X22 : subst,X12 : subst,X23 : subst] : (~(X8 @ (comp @ X12 @ X23) @ (sub @ X11 @ X23) @ X22) | (X8 @ X12 @ X11 @ (comp @ X23 @ X22))) | ~ ! [X23 : subst,X12 : subst,X11 : term,X22 : subst] : (~(X8 @ X12 @ X11 @ (comp @ X23 @ X22)) | (X8 @ (comp @ X12 @ X23) @ (sub @ X11 @ X23) @ X22)) | (X8 @ id @ (lam @ X24) @ id)))) <=> hoasinduction_lem3_lthm) & hoasinduction_lem3v2_gthm & (! [X15 : term] : ~ ! [X18 : (subst > term > term)] : ~ ! [X12 : subst,X11 : term] : (((sub @ X15 @ (push @ X11 @ X12))) = ((X18 @ X12 @ X11))) <=> hoasinduction_lem3v2_f_lthm) & pushprop & (hoasinduction_lem3b_lthm <=> ! [X15 : term] : ~ ! [X18 : (subst > term > term)] : (((X18 @ sh @ one)) != ((sub @ X15 @ (push @ one @ sh))))) & (! [X12 : subst] : (X12 = ((push @ (sub @ one @ X12) @ (comp @ sh @ X12)))) <=> axscons) & (one = ((d2term @ d_one))) & (((sub @ (d2term @ d_one) @ (d2subst @ d_id))) = ((d2term @ d_one))) & hoasinduction_gthm & (hoasapinj2 <=> ! [X15 : term,X17 : term,X11 : term,X16 : term] : ((X16 = X17) | (((ap @ (sub @ X11 @ id) @ X16)) != ((ap @ (sub @ X15 @ id) @ X17))))) & ((! [X15 : term] : ~ ! [X18 : (subst > term > term)] : ~ ! [X12 : subst,X11 : term] : (((sub @ X15 @ (push @ X11 @ X12))) = ((X18 @ X12 @ X11))) => (! [X11 : term] : (X11 = ((sub @ X11 @ id))) => ! [X8 : (subst > term > subst > $o),X26 : term,X9 : (term > $o)] : ((X9 @ (lam @ X26)) | ~ ! [X15 : term] : (~(X9 @ X15) | (X9 @ (sub @ X26 @ (push @ X15 @ id)))) | ~ ! [X10 : term] : (((X9 @ X10)) = ((X8 @ id @ X10 @ id))) | ~ ! [X18 : (subst > term > term)] : (~ ! [X11 : term,X22 : subst,X12 : subst] : (((sub @ (X18 @ X12 @ X11) @ X22)) = ((X18 @ (comp @ X12 @ X22) @ (sub @ X11 @ X22)))) | ~ ! [X11 : term] : ((X8 @ id @ (X18 @ id @ X11) @ id) | ~(X8 @ id @ X11 @ id)) | (X8 @ id @ (lam @ (X18 @ sh @ one)) @ id))))) <=> hoasinduction_lem3v2a_lthm) & ~ulamvar1 & hoasinduction_lem1_gthm & (((lam @ (d2term @ d_one))) = ((d2term @ d_one))) & hoaslamnotvar_lthm & pushprop_lem1_gthm & (axshiftcons <=> ! [X12 : subst,X11 : term] : (X12 = ((comp @ sh @ (push @ X11 @ X12))))) & ! [X3 : d_term,X2 : d_term] : ((((d2term @ X2)) = ((d2term @ X3))) => (X2 = X3)) & (hoaslam = (^[X6 : subst, X7 : (subst > term > term)] : ((d2term @ d_one)))) & ((! [X11 : term,X12 : subst] : (X11 = ((sub @ one @ (push @ X11 @ X12)))) => ! [X8 : (term > $o),X12 : subst,X9 : (term > $o),X11 : term] : ((X9 @ one) | ~ ! [X10 : term] : (((X9 @ X10)) = ((X8 @ (sub @ X10 @ (push @ X11 @ X12))))) | ~(X8 @ X11))) <=> pushprop_lem1v2_lthm) & hoasinduction_lem1 & hoasinduction_lem1_lthm & (! [X23 : (term > $o),X12 : subst,X15 : term,X8 : (term > $o),X11 : term] : (~(X8 @ X11) | (X23 @ (sub @ X11 @ (push @ X15 @ X12)))) <=> pushprop_lem1) & lamnotvar & axabs & (hoasinduction_lem3aaa <=> ! [X39 : term,X8 : (subst > term > subst > $o)] : (~ ! [X15 : term] : ((X8 @ id @ (sub @ X39 @ (push @ X15 @ id)) @ id) | ~(X8 @ id @ X15 @ id)) | (X8 @ id @ (lam @ (sub @ X39 @ (push @ one @ sh))) @ id) | ~ ! [X40 : term,X18 : (subst > term > term)] : (~ ! [X11 : term] : (~(X8 @ id @ X11 @ id) | (X8 @ id @ (X18 @ id @ X11) @ id)) | (X8 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~ ! [X42 : term,X43 : subst,X41 : subst] : (((sub @ (X18 @ X41 @ X42) @ X43)) = ((sub @ (sub @ X40 @ (push @ X42 @ X41)) @ X43))) | ~ ! [X45 : term,X46 : subst,X44 : subst] : (((X18 @ (comp @ X44 @ X46) @ (sub @ X45 @ X46))) = ((sub @ X40 @ (push @ (sub @ X45 @ X46) @ (comp @ X44 @ X46)))))))) & (hoasinduction_lem3a_lthm <=> (! [X11 : term] : (X11 = ((sub @ X11 @ id))) => (! [X32 : term,X8 : (subst > term > subst > $o)] : ((X8 @ id @ (lam @ (sub @ X32 @ (push @ one @ sh))) @ id) | ~ ! [X18 : (subst > term > term)] : ((X8 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~ ! [X12 : subst,X11 : term,X22 : subst] : (((sub @ (X18 @ X12 @ X11) @ X22)) = ((X18 @ (comp @ X12 @ X22) @ (sub @ X11 @ X22)))) | ~ ! [X11 : term] : (~(X8 @ id @ X11 @ id) | (X8 @ id @ (X18 @ id @ X11) @ id))) | ~ ! [X15 : term] : (~(X8 @ id @ X15 @ id) | (X8 @ id @ (sub @ X32 @ (push @ X15 @ id)) @ id))) => ! [X33 : term,X8 : (subst > term > subst > $o)] : ((X8 @ id @ (lam @ X33) @ id) | ~ ! [X18 : (subst > term > term)] : ((X8 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~ ! [X11 : term,X12 : subst,X22 : subst] : (((sub @ (X18 @ X12 @ X11) @ X22)) = ((X18 @ (comp @ X12 @ X22) @ (sub @ X11 @ X22)))) | ~ ! [X11 : term] : (~(X8 @ id @ X11 @ id) | (X8 @ id @ (X18 @ id @ X11) @ id))) | ~ ! [X15 : term] : (~(X8 @ id @ X15 @ id) | (X8 @ id @ (sub @ X33 @ (push @ X15 @ id)) @ id)))))) & (! [X11 : term] : (X11 = ((sub @ X11 @ id))) <=> axvarid) & ! [X0 : term] : ? [X1 : d_term] : (X0 = ((d2term @ X1))) & ((! [X8 : (subst > term > subst > $o)] : ~ ! [X9 : (term > $o)] : ~ ! [X10 : term] : (((X9 @ X10)) = ((X8 @ id @ X10 @ id))) => (! [X8 : (term > $o),X19 : term] : ((X8 @ X19) | ~ ! [X15 : term,X11 : term] : ((X8 @ (ap @ X11 @ X15)) | ~(X8 @ X11) | ~(X8 @ X15)) | ~ ! [X11 : term] : (~ ! [X15 : term] : ((X8 @ (sub @ X11 @ (push @ X15 @ id))) | ~(X8 @ X15)) | (X8 @ (lam @ X11))) | ~ ! [X11 : term] : ((X8 @ X11) | ~(var @ X11))) => (! [X11 : term] : (X11 = ((sub @ X11 @ id))) => (! [X9 : (term > $o),X8 : (subst > term > subst > $o),X26 : term] : (~ ! [X10 : term] : (((X9 @ X10)) = ((X8 @ id @ X10 @ id))) | (X9 @ (lam @ X26)) | ~ ! [X15 : term] : (~(X9 @ X15) | (X9 @ (sub @ X26 @ (push @ X15 @ id)))) | ~ ! [X18 : (subst > term > term)] : ((X8 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~ ! [X11 : term] : (~(X8 @ id @ X11 @ id) | (X8 @ id @ (X18 @ id @ X11) @ id)) | ~ ! [X22 : subst,X12 : subst,X11 : term] : (((sub @ (X18 @ X12 @ X11) @ X22)) = ((X18 @ (comp @ X12 @ X22) @ (sub @ X11 @ X22)))))) => ! [X27 : term,X8 : (subst > term > subst > $o)] : ((X8 @ id @ X27 @ id) | ~ ! [X11 : term,X15 : term] : (~(X8 @ id @ X15 @ id) | (X8 @ id @ (ap @ (sub @ X11 @ id) @ X15) @ id) | ~(X8 @ id @ X11 @ id)) | ~ ! [X18 : (subst > term > term)] : (~ ! [X11 : term] : ((X8 @ id @ (X18 @ id @ X11) @ id) | ~(X8 @ id @ X11 @ id)) | (X8 @ id @ (lam @ (X18 @ sh @ one)) @ id) | ~ ! [X12 : subst,X22 : subst,X11 : term] : (((sub @ (X18 @ X12 @ X11) @ X22)) = ((X18 @ (comp @ X12 @ X22) @ (sub @ X11 @ X22)))))))))) <=> hoasinduction_no_psi_cond_lthm) & ! [X48 : d_subst,X47 : d_subst] : ((((d2subst @ X47)) = ((d2subst @ X48))) => (X47 = X48)) & (! [X11 : term,X8 : (term > $o),X12 : subst] : ~ ! [X9 : (term > $o)] : ~ ! [X10 : term] : (((X9 @ X10)) = ((X8 @ (sub @ X10 @ (push @ X11 @ X12))))) <=> pushprop_lem0) & (((comp @ (d2subst @ d_id) @ (d2subst @ d_id))) = ((d2subst @ d_id))) & apnotvar & hoaslaminj_gthm & pushprop_lem1v2_gthm & pushprop_lem0_gthm & hoasinduction_lem3_gthm & (hoaslamnotap <=> ! [X35 : term,X34 : term,X18 : (subst > term > term)] : ((((lam @ (X18 @ sh @ one))) != ((ap @ (sub @ X34 @ id) @ X35))) | ~ ! [X11 : term,X12 : subst,X22 : subst] : (((sub @ (X18 @ X12 @ X11) @ X22)) = ((X18 @ (comp @ X12 @ X22) @ (sub @ X11 @ X22)))))) & (substmonoid_lthm <=> (! [X12 : subst] : (X12 = ((comp @ id @ X12))) => (! [X12 : subst] : (X12 = ((comp @ X12 @ id))) => (! [X12 : subst] : (X12 = ((comp @ id @ X12))) & ! [X12 : subst] : (X12 = ((comp @ X12 @ id))))))) & (laminj <=> ! [X11 : term,X15 : term] : ((((lam @ X11)) != ((lam @ X15))) | (X11 = X15))) & (((hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) = ((d2term @ d_one))) & (apinj2 <=> ! [X11 : term,X15 : term,X16 : term,X17 : term] : ((X16 = X17) | (((ap @ X11 @ X16)) != ((ap @ X15 @ X17))))) & termmset_gthm & (axvarcons <=> ! [X11 : term,X12 : subst] : (X11 = ((sub @ one @ (push @ X11 @ X12))))) & ! [X4 : subst] : ? [X5 : d_subst] : (X4 = ((d2subst @ X5))) & (! [X17 : term,X16 : term,X11 : term,X15 : term] : ((((ap @ (sub @ X11 @ id) @ X16)) != ((ap @ (sub @ X15 @ id) @ X17))) | (X11 = X15)) <=> hoasapinj1) & (! [X8 : (subst > term > subst > $o)] : ~ ! [X9 : (term > $o)] : ~ ! [X10 : term] : (((X9 @ X10)) = ((X8 @ id @ X10 @ id))) <=> hoasinduction_lem0_lthm) & ((! [X11 : term] : (X11 = ((sub @ X11 @ id))) => (! [X15 : term,X16 : term,X17 : term,X11 : term] : ((X11 = X15) | (((ap @ X11 @ X16)) != ((ap @ X15 @ X17)))) => ! [X17 : term,X11 : term,X16 : term,X15 : term] : ((((ap @ (sub @ X11 @ id) @ X16)) != ((ap @ (sub @ X15 @ id) @ X17))) | (X11 = X15)))) <=> hoasapinj1_lthm) & (hoasinduction_lem3v2_f <=> ! [X15 : term] : ~ ! [X18 : (subst > term > term)] : ~ ! [X11 : term,X12 : subst] : (((sub @ X15 @ (push @ X11 @ X12))) = ((X18 @ X12 @ X11)))) & hoasinduction_lem2v2_gthm & axclos & hoasinduction_lem2_gthm & pushprop_lem2v2_gthm & hoaslamnotvar & axassoc & (! [X8 : (subst > term > subst > $o)] : ~ ! [X9 : (term > $o)] : ~ ! [X10 : term] : (((X9 @ X10)) = ((X8 @ id @ X10 @ id))) <=> hoasinduction_lem0) & (pushprop_p_and_p_prime = (^[X11 : term, X12 : subst, X8 : (term > $o), X9 : (term > $o)] : (! [X10 : term] : (((X9 @ X10)) = ((X8 @ (sub @ X10 @ (push @ X11 @ X12)))))))) & ulamvarsh & axvarshift & pushprop_lem2v2_lthm & (! [X31 : term,X8 : (term > $o)] : (~ ! [X11 : term] : (~(X8 @ X11) | (X8 @ (lam @ X11))) | ~ ! [X11 : term,X15 : term] : (~(X8 @ X15) | ~(X8 @ X11) | (X8 @ (ap @ X11 @ X15))) | ~ ! [X11 : term] : ((X8 @ X11) | ~(var @ X11)) | (X8 @ X31)) <=> induction) & pushprop_lem2v2 & (hoaslaminj <=> ! [X29 : subst,X28 : (subst > term > term),X18 : (subst > term > term),X30 : term] : (~ ! [X22 : subst,X11 : term,X12 : subst] : (((sub @ (X18 @ X12 @ X11) @ X22)) = ((X18 @ (comp @ X12 @ X22) @ (sub @ X11 @ X22)))) | ~ ! [X11 : term,X12 : subst,X22 : subst] : (((sub @ (X28 @ X12 @ X11) @ X22)) = ((X28 @ (comp @ X12 @ X22) @ (sub @ X11 @ X22)))) | (((X18 @ X29 @ X30)) = ((X28 @ X29 @ X30))) | (((lam @ (X18 @ sh @ one))) != ((lam @ (X28 @ sh @ one)))))) & (id = ((d2subst @ d_id))) & (((push @ (d2term @ d_one) @ (d2subst @ d_id))) = ((d2subst @ d_id))) & (! [X11 : term] : (X11 = ((sub @ X11 @ id))) <=> termmset) & substmonoid_gthm),
  file('/export/starexec/sandbox/benchmark/theBenchmark.p',alg444_1)).
thf(f2,conjecture,(
  (hoasinduction_lem2v2 = ! [X1 : (term > $o),X0 : (subst > term > subst > $o)] : (! [X4 : subst,X3 : term,X2 : subst,X5 : subst] : ((X0 @ X2 @ X3 @ (comp @ X5 @ X4)) => (X0 @ (comp @ X2 @ X5) @ (sub @ X3 @ X5) @ X4)) => (! [X5 : subst,X4 : subst,X2 : subst,X3 : term] : ((X0 @ (comp @ X2 @ X5) @ (sub @ X3 @ X5) @ X4) => (X0 @ X2 @ X3 @ (comp @ X5 @ X4))) => (! [X3 : term,X6 : term] : ((X0 @ id @ X3 @ id) => ((X0 @ id @ X6 @ id) => (X0 @ id @ (hoasap @ id @ X3 @ id @ X6) @ id))) => ((hoasinduction_p_and_p_prime @ X0 @ X1) => ! [X6 : term,X3 : term] : ((X1 @ X3) => ((X1 @ X6) => (X1 @ (ap @ X3 @ X6)))))))))),
  file('/export/starexec/sandbox/benchmark/theBenchmark.p',hoasinduction_lem2v2)).
thf(f3,negated_conjecture,(
  ~ (hoasinduction_lem2v2 = ! [X1 : (term > $o),X0 : (subst > term > subst > $o)] : (! [X4 : subst,X3 : term,X2 : subst,X5 : subst] : ((X0 @ X2 @ X3 @ (comp @ X5 @ X4)) => (X0 @ (comp @ X2 @ X5) @ (sub @ X3 @ X5) @ X4)) => (! [X5 : subst,X4 : subst,X2 : subst,X3 : term] : ((X0 @ (comp @ X2 @ X5) @ (sub @ X3 @ X5) @ X4) => (X0 @ X2 @ X3 @ (comp @ X5 @ X4))) => (! [X3 : term,X6 : term] : ((X0 @ id @ X3 @ id) => ((X0 @ id @ X6 @ id) => (X0 @ id @ (hoasap @ id @ X3 @ id @ X6) @ id))) => ((hoasinduction_p_and_p_prime @ X0 @ X1) => ! [X6 : term,X3 : term] : ((X1 @ X3) => ((X1 @ X6) => (X1 @ (ap @ X3 @ X6)))))))))),
  inference(negated_conjecture,[status(cth)],[f2])).
thf(f4,plain,(
  ~ (hoasinduction_lem2v2 = ! [X0 : (term > $o),X1 : (subst > term > subst > $o)] : (! [X2 : subst,X3 : term,X4 : subst,X5 : subst] : ((X1 @ X4 @ X3 @ (comp @ X5 @ X2)) => (X1 @ (comp @ X4 @ X5) @ (sub @ X3 @ X5) @ X2)) => (! [X6 : subst,X7 : subst,X8 : subst,X9 : term] : ((X1 @ (comp @ X8 @ X6) @ (sub @ X9 @ X6) @ X7) => (X1 @ X8 @ X9 @ (comp @ X6 @ X7))) => (! [X10 : term,X11 : term] : ((X1 @ id @ X10 @ id) => ((X1 @ id @ X11 @ id) => (X1 @ id @ (hoasap @ id @ X10 @ id @ X11) @ id))) => ((hoasinduction_p_and_p_prime @ X1 @ X0) => ! [X12 : term,X13 : term] : ((X0 @ X13) => ((X0 @ X12) => (X0 @ (ap @ X13 @ X12)))))))))),
  inference(rectify,[],[f3])).
thf(f5,plain,(
  ~(! [X1 : (subst > term > subst > $o),X0 : (term > $o)] : (! [X5 : subst,X4 : subst,X2 : subst,X3 : term] : (($true = ((X1 @ X4 @ X3 @ (comp @ X5 @ X2)))) => ($true = ((X1 @ (comp @ X4 @ X5) @ (sub @ X3 @ X5) @ X2)))) => (! [X8 : subst,X6 : subst,X9 : term,X7 : subst] : (($true = ((X1 @ (comp @ X8 @ X6) @ (sub @ X9 @ X6) @ X7))) => (((X1 @ X8 @ X9 @ (comp @ X6 @ X7))) = $true)) => (! [X10 : term,X11 : term] : (($true = ((X1 @ id @ X10 @ id))) => (($true = ((X1 @ id @ X11 @ id))) => (((X1 @ id @ (hoasap @ id @ X10 @ id @ X11) @ id)) = $true))) => (($true = ((hoasinduction_p_and_p_prime @ X1 @ X0))) => ! [X12 : term,X13 : term] : (($true = ((X0 @ X13))) => (($true = ((X0 @ X12))) => ($true = ((X0 @ (ap @ X13 @ X12)))))))))) <=> (hoasinduction_lem2v2 = $true))),
  inference(fool_elimination,[],[f4])).
thf(f6,plain,(
  ((^[X0 : (subst > term > subst > $o), X1 : (term > $o)] : (! [X2 : term] : (((X1 @ X2)) = ((X0 @ id @ X2 @ id))))) = hoasinduction_p_and_p_prime) & pushprop_lem3v2_lthm & (! [X3 : term,X4 : (subst > term > subst > $o)] : (~ ! [X5 : (subst > term > term)] : (~ ! [X6 : subst,X7 : subst,X8 : term] : (((X5 @ (comp @ X6 @ X7) @ (sub @ X8 @ X7))) = ((sub @ (X5 @ X6 @ X8) @ X7))) | ~ ! [X9 : term] : (~(X4 @ id @ X9 @ id) | (X4 @ id @ (X5 @ id @ X9) @ id)) | (X4 @ id @ (lam @ (X5 @ sh @ one)) @ id)) | (X4 @ id @ (lam @ (sub @ X3 @ (push @ one @ sh))) @ id) | ~ ! [X10 : term] : (~(X4 @ id @ X10 @ id) | (X4 @ id @ (sub @ X3 @ (push @ X10 @ id)) @ id))) <=> hoasinduction_lem3aa) & (! [X11 : subst] : (((comp @ X11 @ id)) = X11) <=> axidr) & (! [X12 : subst] : (X12 = ((comp @ id @ X12))) <=> axidl) & (induction2 <=> ! [X13 : (term > $o),X14 : term] : ((X13 @ X14) | ~ ! [X15 : term] : ((X13 @ X15) | ~(var @ X15)) | ~ ! [X16 : term,X17 : term] : ((X13 @ (ap @ X17 @ X16)) | ~(X13 @ X17) | ~(X13 @ X16)) | ~ ! [X18 : term] : (~ ! [X19 : term] : (~(X13 @ X19) | (X13 @ (sub @ X18 @ (push @ X19 @ id)))) | (X13 @ (lam @ X18))))) & hoasinduction_lem1v2_gthm & (! [X20 : term,X21 : (subst > term > subst > $o)] : (~ ! [X22 : term,X23 : term] : (~(X21 @ id @ X23 @ id) | (X21 @ id @ (ap @ (sub @ X22 @ id) @ X23) @ id) | ~(X21 @ id @ X22 @ id)) | ~ ! [X24 : term] : (~(var @ (sub @ X24 @ id)) | (X21 @ id @ X24 @ id)) | ~ ! [X25 : subst,X26 : subst,X27 : subst,X28 : term] : ((X21 @ (comp @ X25 @ X27) @ (sub @ X28 @ X27) @ X26) | ~(X21 @ X25 @ X28 @ (comp @ X27 @ X26))) | (X21 @ id @ X20 @ id) | ~ ! [X29 : (subst > term > term)] : (~ ! [X30 : subst,X31 : subst,X32 : term] : (((X29 @ (comp @ X30 @ X31) @ (sub @ X32 @ X31))) = ((sub @ (X29 @ X30 @ X32) @ X31))) | (X21 @ id @ (lam @ (X29 @ sh @ one)) @ id) | ~ ! [X33 : term] : (~(X21 @ id @ X33 @ id) | (X21 @ id @ (X29 @ id @ X33) @ id))) | ~ ! [X34 : subst,X35 : term,X36 : subst,X37 : subst] : (~(X21 @ (comp @ X34 @ X36) @ (sub @ X35 @ X36) @ X37) | (X21 @ X34 @ X35 @ (comp @ X36 @ X37)))) <=> hoasinduction) & pushprop_lem3v2 & ! [X38 : d_subst] : (d_id = X38) & (induction2_lthm <=> (! [X39 : term] : (((sub @ X39 @ id)) = X39) => (! [X40 : subst,X41 : (term > $o),X42 : term] : (~ ! [X43 : term] : ((X41 @ (lam @ X43)) | ~ ! [X44 : term] : ((X41 @ (sub @ X43 @ (push @ X44 @ id))) | ~(X41 @ X44))) | ~ ! [X45 : term,X46 : term] : (~(X41 @ X46) | (X41 @ (ap @ X45 @ X46)) | ~(X41 @ X45)) | ~ ! [X47 : term] : ((X41 @ (sub @ X47 @ X40)) | ~(var @ X47)) | (X41 @ (sub @ X42 @ X40))) => ! [X48 : term,X49 : (term > $o)] : ((X49 @ X48) | ~ ! [X50 : term] : ((X49 @ X50) | ~(var @ X50)) | ~ ! [X51 : term,X52 : term] : ((X49 @ (ap @ X52 @ X51)) | ~(X49 @ X52) | ~(X49 @ X51)) | ~ ! [X53 : term] : ((X49 @ (lam @ X53)) | ~ ! [X54 : term] : (~(X49 @ X54) | (X49 @ (sub @ X53 @ (push @ X54 @ id))))))))) & (! [X55 : (term > $o),X56 : subst,X57 : term] : (~ ! [X58 : term] : (~(var @ X58) | (X55 @ (sub @ X58 @ X56))) | ~ ! [X59 : term,X60 : term] : ((X55 @ (ap @ X59 @ X60)) | ~(X55 @ X59) | ~(X55 @ X60)) | (X55 @ (sub @ X57 @ X56)) | ~ ! [X61 : term] : (~ ! [X62 : term] : (~(X55 @ X62) | (X55 @ (sub @ X61 @ (push @ X62 @ id)))) | (X55 @ (lam @ X61)))) <=> induction2lem) & ulamvarind & (hoasinduction_lem3 <=> ! [X63 : (subst > term > subst > $o),X64 : term] : ((X63 @ id @ (lam @ X64) @ id) | ~ ! [X65 : (subst > term > term)] : ((X63 @ id @ (lam @ (X65 @ sh @ one)) @ id) | ~ ! [X66 : term,X67 : subst,X68 : subst] : (((X65 @ (comp @ X67 @ X68) @ (sub @ X66 @ X68))) = ((sub @ (X65 @ X67 @ X66) @ X68))) | ~ ! [X69 : term] : (~(X63 @ id @ X69 @ id) | (X63 @ id @ (X65 @ id @ X69) @ id))) | ~ ! [X70 : term,X71 : subst,X72 : subst,X73 : subst] : (~(X63 @ (comp @ X71 @ X72) @ (sub @ X70 @ X72) @ X73) | (X63 @ X71 @ X70 @ (comp @ X72 @ X73))) | ~ ! [X74 : subst,X75 : term,X76 : subst,X77 : subst] : ((X63 @ (comp @ X76 @ X77) @ (sub @ X75 @ X77) @ X74) | ~(X63 @ X76 @ X75 @ (comp @ X77 @ X74))) | ~ ! [X78 : term] : (~(X63 @ id @ X78 @ id) | (X63 @ id @ (sub @ X64 @ (push @ X78 @ id)) @ id)))) & pushprop_lthm & hoasapnotvar & hoaslamnotap_lthm & hoasinduction_lem3a_gthm & (sh = ((d2subst @ d_id))) & ((! [X79 : subst] : (((comp @ id @ X79)) = X79) & ! [X80 : subst] : (((comp @ X80 @ id)) = X80)) <=> substmonoid) & hoasinduction_lem1v2 & (hoasinduction_lem3v2a <=> ! [X81 : (term > $o),X82 : term,X83 : (subst > term > subst > $o)] : (~ ! [X84 : term] : (((X81 @ X84)) = ((X83 @ id @ X84 @ id))) | ~ ! [X85 : (subst > term > term)] : ((X83 @ id @ (lam @ (X85 @ sh @ one)) @ id) | ~ ! [X86 : term] : (~(X83 @ id @ X86 @ id) | (X83 @ id @ (X85 @ id @ X86) @ id)) | ~ ! [X87 : subst,X88 : term,X89 : subst] : (((sub @ (X85 @ X87 @ X88) @ X89)) = ((X85 @ (comp @ X87 @ X89) @ (sub @ X88 @ X89))))) | (X81 @ (lam @ X82)) | ~ ! [X90 : term] : ((X81 @ (sub @ X82 @ (push @ X90 @ id))) | ~(X81 @ X90)))) & pushprop_gthm & (((ap @ (d2term @ d_one) @ (d2term @ d_one))) = ((d2term @ d_one))) & ((! [X91 : term] : (((sub @ X91 @ id)) = X91) => ! [X92 : term,X93 : (term > $o),X94 : (subst > term > subst > $o)] : ((X93 @ (lam @ X92)) | ~ ! [X95 : (subst > term > term)] : (~ ! [X96 : subst,X97 : term,X98 : subst] : (((X95 @ (comp @ X98 @ X96) @ (sub @ X97 @ X96))) = ((sub @ (X95 @ X98 @ X97) @ X96))) | ~ ! [X99 : term] : (~(X94 @ id @ X99 @ id) | (X94 @ id @ (X95 @ id @ X99) @ id)) | (X94 @ id @ (lam @ (X95 @ sh @ one)) @ id)) | ~ ! [X100 : term] : (((X94 @ id @ X100 @ id)) = ((X93 @ X100))) | ~ ! [X101 : term] : ((X93 @ (sub @ X92 @ (push @ X101 @ id))) | ~(X93 @ X101)) | ~ ! [X102 : subst,X103 : subst,X104 : subst,X105 : term] : (~(X94 @ X102 @ X105 @ (comp @ X104 @ X103)) | (X94 @ (comp @ X102 @ X104) @ (sub @ X105 @ X104) @ X103)) | ~ ! [X106 : subst,X107 : term,X108 : subst,X109 : subst] : ((X94 @ X109 @ X107 @ (comp @ X106 @ X108)) | ~(X94 @ (comp @ X109 @ X106) @ (sub @ X107 @ X106) @ X108)))) <=> hoasinduction_lem3v2_lthm) & (pushprop_lem1_lthm <=> (! [X110 : term,X111 : subst] : (((sub @ one @ (push @ X110 @ X111))) = X110) => (! [X112 : subst,X113 : term] : (((comp @ sh @ (push @ X113 @ X112))) = X112) => ! [X114 : term,X115 : (term > $o),X116 : (term > $o),X117 : term,X118 : subst] : (~(X115 @ X114) | (X116 @ (sub @ X114 @ (push @ X117 @ X118))))))) & (hoasinduction_lem3v2 <=> ! [X119 : (subst > term > subst > $o),X120 : (term > $o),X121 : term] : (~ ! [X122 : (subst > term > term)] : ((X119 @ id @ (lam @ (X122 @ sh @ one)) @ id) | ~ ! [X123 : subst,X124 : subst,X125 : term] : (((X122 @ (comp @ X124 @ X123) @ (sub @ X125 @ X123))) = ((sub @ (X122 @ X124 @ X125) @ X123))) | ~ ! [X126 : term] : (~(X119 @ id @ X126 @ id) | (X119 @ id @ (X122 @ id @ X126) @ id))) | ~ ! [X127 : term] : ((X120 @ (sub @ X121 @ (push @ X127 @ id))) | ~(X120 @ X127)) | ~ ! [X128 : subst,X129 : subst,X130 : term,X131 : subst] : ((X119 @ X128 @ X130 @ (comp @ X131 @ X129)) | ~(X119 @ (comp @ X128 @ X131) @ (sub @ X130 @ X131) @ X129)) | ~ ! [X132 : subst,X133 : subst,X134 : subst,X135 : term] : (~(X119 @ X132 @ X135 @ (comp @ X133 @ X134)) | (X119 @ (comp @ X132 @ X133) @ (sub @ X135 @ X133) @ X134)) | ~ ! [X136 : term] : (((X120 @ X136)) = ((X119 @ id @ X136 @ id))) | (X120 @ (lam @ X121)))) & ~(hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id)) & (! [X137 : term,X138 : term,X139 : (subst > term > subst > $o),X140 : (term > $o)] : (~(X140 @ X138) | ~ ! [X141 : term,X142 : subst,X143 : subst,X144 : subst] : (~(X139 @ X143 @ X141 @ (comp @ X144 @ X142)) | (X139 @ (comp @ X143 @ X144) @ (sub @ X141 @ X144) @ X142)) | ~ ! [X145 : subst,X146 : term,X147 : subst,X148 : subst] : ((X139 @ X145 @ X146 @ (comp @ X148 @ X147)) | ~(X139 @ (comp @ X145 @ X148) @ (sub @ X146 @ X148) @ X147)) | ~ ! [X149 : term] : (((X139 @ id @ X149 @ id)) = ((X140 @ X149))) | (X140 @ (ap @ X138 @ X137)) | ~ ! [X150 : term,X151 : term] : (~(X139 @ id @ X150 @ id) | ~(X139 @ id @ X151 @ id) | (X139 @ id @ (ap @ (sub @ X151 @ id) @ X150) @ id)) | ~(X140 @ X137)) <=> hoasinduction_lem2v2) & hoaslamnotap_gthm & ! [X152 : d_term] : (d_one = X152) & ((! [X153 : (subst > term > subst > $o)] : ~ ! [X154 : (term > $o)] : ~ ! [X155 : term] : (((X154 @ X155)) = ((X153 @ id @ X155 @ id))) => (! [X156 : (term > $o),X157 : term] : (~ ! [X158 : term,X159 : term] : ((X156 @ (ap @ X159 @ X158)) | ~(X156 @ X159) | ~(X156 @ X158)) | ~ ! [X160 : term] : (~ ! [X161 : term] : (~(X156 @ X161) | (X156 @ (sub @ X160 @ (push @ X161 @ id)))) | (X156 @ (lam @ X160))) | (X156 @ X157) | ~ ! [X162 : term] : ((X156 @ X162) | ~(var @ X162))) => (! [X163 : term] : (((sub @ X163 @ id)) = X163) => (! [X164 : (term > $o),X165 : term,X166 : (subst > term > subst > $o)] : (~ ! [X167 : (subst > term > term)] : (~ ! [X168 : term,X169 : subst,X170 : subst] : (((X167 @ (comp @ X169 @ X170) @ (sub @ X168 @ X170))) = ((sub @ (X167 @ X169 @ X168) @ X170))) | (X166 @ id @ (lam @ (X167 @ sh @ one)) @ id) | ~ ! [X171 : term] : (~(X166 @ id @ X171 @ id) | (X166 @ id @ (X167 @ id @ X171) @ id))) | ~ ! [X172 : term] : ((X164 @ (sub @ X165 @ (push @ X172 @ id))) | ~(X164 @ X172)) | ~ ! [X173 : term] : (((X164 @ X173)) = ((X166 @ id @ X173 @ id))) | (X164 @ (lam @ X165))) => ! [X174 : term,X175 : (subst > term > subst > $o)] : (~ ! [X176 : term] : ((X175 @ id @ X176 @ id) | ~(var @ (sub @ X176 @ id))) | ~ ! [X177 : term,X178 : term] : ((X175 @ id @ (ap @ (sub @ X177 @ id) @ X178) @ id) | ~(X175 @ id @ X178 @ id) | ~(X175 @ id @ X177 @ id)) | ~ ! [X179 : subst,X180 : subst,X181 : subst,X182 : term] : ((X175 @ (comp @ X181 @ X179) @ (sub @ X182 @ X179) @ X180) | ~(X175 @ X181 @ X182 @ (comp @ X179 @ X180))) | ~ ! [X183 : term,X184 : subst,X185 : subst,X186 : subst] : ((X175 @ X186 @ X183 @ (comp @ X184 @ X185)) | ~(X175 @ (comp @ X186 @ X184) @ (sub @ X183 @ X184) @ X185)) | (X175 @ id @ X174 @ id) | ~ ! [X187 : (subst > term > term)] : (~ ! [X188 : term] : (~(X175 @ id @ X188 @ id) | (X175 @ id @ (X187 @ id @ X188) @ id)) | ~ ! [X189 : term,X190 : subst,X191 : subst] : (((X187 @ (comp @ X191 @ X190) @ (sub @ X189 @ X190))) = ((sub @ (X187 @ X191 @ X189) @ X190))) | (X175 @ id @ (lam @ (X187 @ sh @ one)) @ id))))))) <=> hoasinduction_lthm_3) & (pushprop_lem0_lthm <=> ! [X192 : subst,X193 : (term > $o),X194 : term] : ~ ! [X195 : (term > $o)] : ~ ! [X196 : term] : (((X193 @ (sub @ X196 @ (push @ X194 @ X192)))) = ((X195 @ X196)))) & hoasinduction_lem3b_gthm & ((! [X197 : term] : (((sub @ X197 @ id)) = X197) => ! [X198 : term] : (((sub @ X198 @ id)) = X198)) <=> termmset_lthm) & hoasapnotvar_lthm & ((! [X199 : term,X200 : (term > $o)] : ((X200 @ X199) | ~ ! [X201 : term] : (~(var @ X201) | (X200 @ X201)) | ~ ! [X202 : term,X203 : term] : (~(X200 @ X202) | ~(X200 @ X203) | (X200 @ (ap @ X203 @ X202))) | ~ ! [X204 : term] : (~ ! [X205 : term] : ((X200 @ (sub @ X204 @ (push @ X205 @ id))) | ~(X200 @ X205)) | (X200 @ (lam @ X204)))) => (! [X206 : term,X207 : term,X208 : (subst > term > subst > $o)] : ((X208 @ id @ (ap @ X207 @ X206) @ id) | ~(X208 @ id @ X206 @ id) | ~ ! [X209 : subst,X210 : subst,X211 : term,X212 : subst] : ((X208 @ (comp @ X210 @ X212) @ (sub @ X211 @ X212) @ X209) | ~(X208 @ X210 @ X211 @ (comp @ X212 @ X209))) | ~ ! [X213 : term,X214 : term] : (~(X208 @ id @ X213 @ id) | ~(X208 @ id @ X214 @ id) | (X208 @ id @ (ap @ (sub @ X213 @ id) @ X214) @ id)) | ~(X208 @ id @ X207 @ id) | ~ ! [X215 : subst,X216 : subst,X217 : subst,X218 : term] : ((X208 @ X216 @ X218 @ (comp @ X217 @ X215)) | ~(X208 @ (comp @ X216 @ X217) @ (sub @ X218 @ X217) @ X215))) => (! [X219 : term,X220 : (subst > term > subst > $o)] : (~ ! [X221 : term] : ((X220 @ id @ (sub @ X219 @ (push @ X221 @ id)) @ id) | ~(X220 @ id @ X221 @ id)) | (X220 @ id @ (lam @ X219) @ id) | ~ ! [X222 : term,X223 : subst,X224 : subst,X225 : subst] : ((X220 @ X223 @ X222 @ (comp @ X225 @ X224)) | ~(X220 @ (comp @ X223 @ X225) @ (sub @ X222 @ X225) @ X224)) | ~ ! [X226 : term,X227 : subst,X228 : subst,X229 : subst] : ((X220 @ (comp @ X229 @ X227) @ (sub @ X226 @ X227) @ X228) | ~(X220 @ X229 @ X226 @ (comp @ X227 @ X228))) | ~ ! [X230 : (subst > term > term)] : (~ ! [X231 : term,X232 : subst,X233 : subst] : (((X230 @ (comp @ X233 @ X232) @ (sub @ X231 @ X232))) = ((sub @ (X230 @ X233 @ X231) @ X232))) | ~ ! [X234 : term] : (~(X220 @ id @ X234 @ id) | (X220 @ id @ (X230 @ id @ X234) @ id)) | (X220 @ id @ (lam @ (X230 @ sh @ one)) @ id))) => ! [X235 : (subst > term > subst > $o),X236 : term] : (~ ! [X237 : term,X238 : subst,X239 : subst,X240 : subst] : (~(X235 @ (comp @ X239 @ X240) @ (sub @ X237 @ X240) @ X238) | (X235 @ X239 @ X237 @ (comp @ X240 @ X238))) | ~ ! [X241 : term,X242 : term] : (~(X235 @ id @ X241 @ id) | (X235 @ id @ (ap @ (sub @ X242 @ id) @ X241) @ id) | ~(X235 @ id @ X242 @ id)) | ~ ! [X243 : subst,X244 : subst,X245 : subst,X246 : term] : ((X235 @ (comp @ X244 @ X245) @ (sub @ X246 @ X245) @ X243) | ~(X235 @ X244 @ X246 @ (comp @ X245 @ X243))) | ~ ! [X247 : term] : (~(var @ (sub @ X247 @ id)) | (X235 @ id @ X247 @ id)) | ~ ! [X248 : (subst > term > term)] : (~ ! [X249 : subst,X250 : subst,X251 : term] : (((sub @ (X248 @ X249 @ X251) @ X250)) = ((X248 @ (comp @ X249 @ X250) @ (sub @ X251 @ X250)))) | ~ ! [X252 : term] : (~(X235 @ id @ X252 @ id) | (X235 @ id @ (X248 @ id @ X252) @ id)) | (X235 @ id @ (lam @ (X248 @ sh @ one)) @ id)) | (X235 @ id @ X236 @ id))))) <=> hoasinduction_lthm) & hoasapinj2_gthm & ~(var @ (d2term @ d_one)) & hoasapnotvar_gthm & hoasapinj1_gthm & (hoasinduction_lem2 <=> ! [X253 : (subst > term > subst > $o),X254 : term,X255 : term] : (~ ! [X256 : term,X257 : term] : (~(X253 @ id @ X257 @ id) | (X253 @ id @ (ap @ (sub @ X257 @ id) @ X256) @ id) | ~(X253 @ id @ X256 @ id)) | ~(X253 @ id @ X254 @ id) | ~ ! [X258 : term,X259 : subst,X260 : subst,X261 : subst] : (~(X253 @ X261 @ X258 @ (comp @ X260 @ X259)) | (X253 @ (comp @ X261 @ X260) @ (sub @ X258 @ X260) @ X259)) | ~ ! [X262 : term,X263 : subst,X264 : subst,X265 : subst] : (~(X253 @ (comp @ X264 @ X265) @ (sub @ X262 @ X265) @ X263) | (X253 @ X264 @ X262 @ (comp @ X265 @ X263))) | ~(X253 @ id @ X255 @ id) | (X253 @ id @ (ap @ X254 @ X255) @ id))) & induction2_gthm & ((! [X266 : subst,X267 : term] : (((sub @ one @ (push @ X267 @ X266))) = X267) => (! [X268 : term,X269 : subst] : (((comp @ sh @ (push @ X268 @ X269))) = X269) => (! [X270 : subst] : (((comp @ X270 @ id)) = X270) => (! [X271 : (term > $o),X272 : term] : (~ ! [X273 : term] : (~(var @ X273) | (X271 @ X273)) | (X271 @ X272) | ~ ! [X274 : term] : ((X271 @ (lam @ X274)) | ~(X271 @ X274)) | ~ ! [X275 : term,X276 : term] : (~(X271 @ X276) | ~(X271 @ X275) | (X271 @ (ap @ X275 @ X276)))) => ! [X277 : (term > $o),X278 : subst,X279 : term] : (~ ! [X280 : term] : ((X277 @ (lam @ X280)) | ~ ! [X281 : term] : (~(X277 @ X281) | (X277 @ (sub @ X280 @ (push @ X281 @ id))))) | (X277 @ (sub @ X279 @ X278)) | ~ ! [X282 : term,X283 : term] : (~(X277 @ X282) | (X277 @ (ap @ X283 @ X282)) | ~(X277 @ X283)) | ~ ! [X284 : term] : (~(var @ X284) | (X277 @ (sub @ X284 @ X278)))))))) <=> induction2lem_lthm) & (pushprop_lem1v2 <=> ! [X285 : (term > $o),X286 : (term > $o),X287 : subst,X288 : term] : (~ ! [X289 : term] : (((X285 @ X289)) = ((X286 @ (sub @ X289 @ (push @ X288 @ X287))))) | (X285 @ one) | ~(X286 @ X288))) & (hoasinduction_lem3a <=> ! [X290 : (subst > term > subst > $o),X291 : term] : (~ ! [X292 : (subst > term > term)] : ((X290 @ id @ (lam @ (X292 @ sh @ one)) @ id) | ~ ! [X293 : term] : (~(X290 @ id @ X293 @ id) | (X290 @ id @ (X292 @ id @ X293) @ id)) | ~ ! [X294 : subst,X295 : subst,X296 : term] : (((sub @ (X292 @ X295 @ X296) @ X294)) = ((X292 @ (comp @ X295 @ X294) @ (sub @ X296 @ X294))))) | (X290 @ id @ (lam @ X291) @ id) | ~ ! [X297 : term] : ((X290 @ id @ (sub @ X291 @ (push @ X297 @ id)) @ id) | ~(X290 @ id @ X297 @ id)))) & (shinj <=> ! [X298 : term,X299 : term] : ((((sub @ X298 @ sh)) != ((sub @ X299 @ sh))) | (X298 = X299))) & ((! [X300 : subst,X301 : term] : (((sub @ one @ (push @ X301 @ X300))) = X301) => (! [X302 : term,X303 : subst] : (((comp @ sh @ (push @ X302 @ X303))) = X303) => (! [X304 : term,X305 : term] : ((X304 = X305) | (((lam @ X305)) != ((lam @ X304)))) => ! [X306 : (subst > term > term),X307 : subst,X308 : term,X309 : (subst > term > term)] : (~ ! [X310 : term,X311 : subst,X312 : subst] : (((sub @ (X306 @ X311 @ X310) @ X312)) = ((X306 @ (comp @ X311 @ X312) @ (sub @ X310 @ X312)))) | ~ ! [X313 : subst,X314 : term,X315 : subst] : (((X309 @ (comp @ X313 @ X315) @ (sub @ X314 @ X315))) = ((sub @ (X309 @ X313 @ X314) @ X315))) | (((X306 @ X307 @ X308)) = ((X309 @ X307 @ X308))) | (((lam @ (X309 @ sh @ one))) != ((lam @ (X306 @ sh @ one)))))))) <=> hoaslaminj_lthm) & pushprop_lthm_orig & (hoasapinj2_lthm <=> (! [X316 : term,X317 : term,X318 : term,X319 : term] : ((X318 = X319) | (((ap @ X317 @ X319)) != ((ap @ X316 @ X318)))) => ! [X320 : term,X321 : term,X322 : term,X323 : term] : ((((ap @ (sub @ X320 @ id) @ X322)) != ((ap @ (sub @ X323 @ id) @ X321))) | (X321 = X322)))) & (hoasinduction_no_psi_cond <=> ! [X324 : term,X325 : (subst > term > subst > $o)] : (~ ! [X326 : term,X327 : term] : ((X325 @ id @ (ap @ (sub @ X326 @ id) @ X327) @ id) | ~(X325 @ id @ X327 @ id) | ~(X325 @ id @ X326 @ id)) | ~ ! [X328 : (subst > term > term)] : (~ ! [X329 : term] : (~(X325 @ id @ X329 @ id) | (X325 @ id @ (X328 @ id @ X329) @ id)) | ~ ! [X330 : subst,X331 : term,X332 : subst] : (((X328 @ (comp @ X332 @ X330) @ (sub @ X331 @ X330))) = ((sub @ (X328 @ X332 @ X331) @ X330))) | (X325 @ id @ (lam @ (X328 @ sh @ one)) @ id)) | (X325 @ id @ X324 @ id))) & hoaslamnotvar_gthm & (hoasinduction_lem3aa_lthm <=> ! [X333 : term,X334 : (subst > term > subst > $o)] : (~ ! [X335 : (subst > term > term)] : ((X334 @ id @ (lam @ (X335 @ sh @ one)) @ id) | ~ ! [X336 : term] : (~(X334 @ id @ X336 @ id) | (X334 @ id @ (X335 @ id @ X336) @ id)) | ~ ! [X337 : subst,X338 : subst,X339 : term] : (((X335 @ (comp @ X337 @ X338) @ (sub @ X339 @ X338))) = ((sub @ (X335 @ X337 @ X339) @ X338)))) | (X334 @ id @ (lam @ (sub @ X333 @ (push @ one @ sh))) @ id) | ~ ! [X340 : term] : (~(X334 @ id @ X340 @ id) | (X334 @ id @ (sub @ X333 @ (push @ X340 @ id)) @ id)))) & axmap & hoasinduction_lem2_lthm & (hoasinduction_lem3b <=> ! [X341 : term] : ~ ! [X342 : (subst > term > term)] : (((X342 @ sh @ one)) != ((sub @ X341 @ (push @ one @ sh))))) & induction2lem_gthm & (apinj1 <=> ! [X343 : term,X344 : term,X345 : term,X346 : term] : ((((ap @ X345 @ X343)) != ((ap @ X344 @ X346))) | (X344 = X345))) & axapp & ~lamnotap & ((! [X347 : term] : (((sub @ X347 @ id)) = X347) => (! [X348 : term,X349 : (subst > term > subst > $o)] : ((X349 @ id @ (lam @ (sub @ X348 @ (push @ one @ sh))) @ id) | ~ ! [X350 : term] : (~(X349 @ id @ X350 @ id) | (X349 @ id @ (sub @ X348 @ (push @ X350 @ id)) @ id)) | ~ ! [X351 : (subst > term > term)] : (~ ! [X352 : term] : ((X349 @ id @ (X351 @ id @ X352) @ id) | ~(X349 @ id @ X352 @ id)) | ~ ! [X353 : term,X354 : subst,X355 : subst] : (((X351 @ (comp @ X355 @ X354) @ (sub @ X353 @ X354))) = ((sub @ (X351 @ X355 @ X353) @ X354))) | (X349 @ id @ (lam @ (X351 @ sh @ one)) @ id))) => ! [X356 : (subst > term > subst > $o),X357 : term] : (~ ! [X358 : term] : (~(X356 @ id @ X358 @ id) | (X356 @ id @ (sub @ X357 @ (push @ X358 @ id)) @ id)) | ~ ! [X359 : (subst > term > term)] : (~ ! [X360 : term] : (~(X356 @ id @ X360 @ id) | (X356 @ id @ (X359 @ id @ X360) @ id)) | (X356 @ id @ (lam @ (X359 @ sh @ one)) @ id) | ~ ! [X361 : subst,X362 : subst,X363 : term] : (((X359 @ (comp @ X361 @ X362) @ (sub @ X363 @ X362))) = ((sub @ (X359 @ X361 @ X363) @ X362)))) | ~ ! [X364 : term,X365 : subst,X366 : subst,X367 : subst] : (~(X356 @ (comp @ X366 @ X367) @ (sub @ X364 @ X367) @ X365) | (X356 @ X366 @ X364 @ (comp @ X367 @ X365))) | ~ ! [X368 : subst,X369 : subst,X370 : term,X371 : subst] : (~(X356 @ X369 @ X370 @ (comp @ X368 @ X371)) | (X356 @ (comp @ X369 @ X368) @ (sub @ X370 @ X368) @ X371)) | (X356 @ id @ (lam @ X357) @ id)))) <=> hoasinduction_lem3_lthm) & hoasinduction_lem3v2_gthm & (! [X372 : term] : ~ ! [X373 : (subst > term > term)] : ~ ! [X374 : subst,X375 : term] : (((sub @ X372 @ (push @ X375 @ X374))) = ((X373 @ X374 @ X375))) <=> hoasinduction_lem3v2_f_lthm) & pushprop & (hoasinduction_lem3b_lthm <=> ! [X376 : term] : ~ ! [X377 : (subst > term > term)] : (((sub @ X376 @ (push @ one @ sh))) != ((X377 @ sh @ one)))) & (! [X378 : subst] : (((push @ (sub @ one @ X378) @ (comp @ sh @ X378))) = X378) <=> axscons) & (one = ((d2term @ d_one))) & (((sub @ (d2term @ d_one) @ (d2subst @ d_id))) = ((d2term @ d_one))) & hoasinduction_gthm & (hoasapinj2 <=> ! [X379 : term,X380 : term,X381 : term,X382 : term] : ((X380 = X382) | (((ap @ (sub @ X379 @ id) @ X380)) != ((ap @ (sub @ X381 @ id) @ X382))))) & ((! [X383 : term] : ~ ! [X384 : (subst > term > term)] : ~ ! [X385 : subst,X386 : term] : (((sub @ X383 @ (push @ X386 @ X385))) = ((X384 @ X385 @ X386))) => (! [X387 : term] : (((sub @ X387 @ id)) = X387) => ! [X388 : (subst > term > subst > $o),X389 : term,X390 : (term > $o)] : ((X390 @ (lam @ X389)) | ~ ! [X391 : term] : (~(X390 @ X391) | (X390 @ (sub @ X389 @ (push @ X391 @ id)))) | ~ ! [X392 : term] : (((X390 @ X392)) = ((X388 @ id @ X392 @ id))) | ~ ! [X393 : (subst > term > term)] : (~ ! [X394 : term,X395 : subst,X396 : subst] : (((sub @ (X393 @ X396 @ X394) @ X395)) = ((X393 @ (comp @ X396 @ X395) @ (sub @ X394 @ X395)))) | ~ ! [X397 : term] : ((X388 @ id @ (X393 @ id @ X397) @ id) | ~(X388 @ id @ X397 @ id)) | (X388 @ id @ (lam @ (X393 @ sh @ one)) @ id))))) <=> hoasinduction_lem3v2a_lthm) & ~ulamvar1 & hoasinduction_lem1_gthm & (((lam @ (d2term @ d_one))) = ((d2term @ d_one))) & hoaslamnotvar_lthm & pushprop_lem1_gthm & (axshiftcons <=> ! [X398 : subst,X399 : term] : (((comp @ sh @ (push @ X399 @ X398))) = X398)) & ! [X400 : d_term,X401 : d_term] : ((((d2term @ X401)) = ((d2term @ X400))) => (X400 = X401)) & (hoaslam = (^[X402 : subst, X403 : (subst > term > term)] : ((d2term @ d_one)))) & ((! [X404 : term,X405 : subst] : (((sub @ one @ (push @ X404 @ X405))) = X404) => ! [X406 : (term > $o),X407 : subst,X408 : (term > $o),X409 : term] : ((X408 @ one) | ~ ! [X410 : term] : (((X408 @ X410)) = ((X406 @ (sub @ X410 @ (push @ X409 @ X407))))) | ~(X406 @ X409))) <=> pushprop_lem1v2_lthm) & hoasinduction_lem1 & hoasinduction_lem1_lthm & (! [X411 : (term > $o),X412 : subst,X413 : term,X414 : (term > $o),X415 : term] : (~(X414 @ X415) | (X411 @ (sub @ X415 @ (push @ X413 @ X412)))) <=> pushprop_lem1) & lamnotvar & axabs & (hoasinduction_lem3aaa <=> ! [X416 : term,X417 : (subst > term > subst > $o)] : (~ ! [X418 : term] : ((X417 @ id @ (sub @ X416 @ (push @ X418 @ id)) @ id) | ~(X417 @ id @ X418 @ id)) | (X417 @ id @ (lam @ (sub @ X416 @ (push @ one @ sh))) @ id) | ~ ! [X419 : term,X420 : (subst > term > term)] : (~ ! [X421 : term] : (~(X417 @ id @ X421 @ id) | (X417 @ id @ (X420 @ id @ X421) @ id)) | (X417 @ id @ (lam @ (X420 @ sh @ one)) @ id) | ~ ! [X422 : term,X423 : subst,X424 : subst] : (((sub @ (X420 @ X424 @ X422) @ X423)) = ((sub @ (sub @ X419 @ (push @ X422 @ X424)) @ X423))) | ~ ! [X425 : term,X426 : subst,X427 : subst] : (((X420 @ (comp @ X427 @ X426) @ (sub @ X425 @ X426))) = ((sub @ X419 @ (push @ (sub @ X425 @ X426) @ (comp @ X427 @ X426)))))))) & (hoasinduction_lem3a_lthm <=> (! [X428 : term] : (((sub @ X428 @ id)) = X428) => (! [X429 : term,X430 : (subst > term > subst > $o)] : ((X430 @ id @ (lam @ (sub @ X429 @ (push @ one @ sh))) @ id) | ~ ! [X431 : (subst > term > term)] : ((X430 @ id @ (lam @ (X431 @ sh @ one)) @ id) | ~ ! [X432 : subst,X433 : term,X434 : subst] : (((sub @ (X431 @ X432 @ X433) @ X434)) = ((X431 @ (comp @ X432 @ X434) @ (sub @ X433 @ X434)))) | ~ ! [X435 : term] : (~(X430 @ id @ X435 @ id) | (X430 @ id @ (X431 @ id @ X435) @ id))) | ~ ! [X436 : term] : (~(X430 @ id @ X436 @ id) | (X430 @ id @ (sub @ X429 @ (push @ X436 @ id)) @ id))) => ! [X437 : term,X438 : (subst > term > subst > $o)] : ((X438 @ id @ (lam @ X437) @ id) | ~ ! [X439 : (subst > term > term)] : ((X438 @ id @ (lam @ (X439 @ sh @ one)) @ id) | ~ ! [X440 : term,X441 : subst,X442 : subst] : (((sub @ (X439 @ X441 @ X440) @ X442)) = ((X439 @ (comp @ X441 @ X442) @ (sub @ X440 @ X442)))) | ~ ! [X443 : term] : (~(X438 @ id @ X443 @ id) | (X438 @ id @ (X439 @ id @ X443) @ id))) | ~ ! [X444 : term] : (~(X438 @ id @ X444 @ id) | (X438 @ id @ (sub @ X437 @ (push @ X444 @ id)) @ id)))))) & (! [X445 : term] : (((sub @ X445 @ id)) = X445) <=> axvarid) & ! [X446 : term] : ? [X447 : d_term] : (((d2term @ X447)) = X446) & ((! [X448 : (subst > term > subst > $o)] : ~ ! [X449 : (term > $o)] : ~ ! [X450 : term] : (((X448 @ id @ X450 @ id)) = ((X449 @ X450))) => (! [X451 : (term > $o),X452 : term] : ((X451 @ X452) | ~ ! [X453 : term,X454 : term] : ((X451 @ (ap @ X454 @ X453)) | ~(X451 @ X454) | ~(X451 @ X453)) | ~ ! [X455 : term] : (~ ! [X456 : term] : ((X451 @ (sub @ X455 @ (push @ X456 @ id))) | ~(X451 @ X456)) | (X451 @ (lam @ X455))) | ~ ! [X457 : term] : ((X451 @ X457) | ~(var @ X457))) => (! [X458 : term] : (((sub @ X458 @ id)) = X458) => (! [X459 : (term > $o),X460 : (subst > term > subst > $o),X461 : term] : (~ ! [X462 : term] : (((X459 @ X462)) = ((X460 @ id @ X462 @ id))) | (X459 @ (lam @ X461)) | ~ ! [X463 : term] : (~(X459 @ X463) | (X459 @ (sub @ X461 @ (push @ X463 @ id)))) | ~ ! [X464 : (subst > term > term)] : ((X460 @ id @ (lam @ (X464 @ sh @ one)) @ id) | ~ ! [X465 : term] : (~(X460 @ id @ X465 @ id) | (X460 @ id @ (X464 @ id @ X465) @ id)) | ~ ! [X466 : subst,X467 : subst,X468 : term] : (((X464 @ (comp @ X467 @ X466) @ (sub @ X468 @ X466))) = ((sub @ (X464 @ X467 @ X468) @ X466))))) => ! [X469 : term,X470 : (subst > term > subst > $o)] : ((X470 @ id @ X469 @ id) | ~ ! [X471 : term,X472 : term] : (~(X470 @ id @ X472 @ id) | (X470 @ id @ (ap @ (sub @ X471 @ id) @ X472) @ id) | ~(X470 @ id @ X471 @ id)) | ~ ! [X473 : (subst > term > term)] : (~ ! [X474 : term] : ((X470 @ id @ (X473 @ id @ X474) @ id) | ~(X470 @ id @ X474 @ id)) | (X470 @ id @ (lam @ (X473 @ sh @ one)) @ id) | ~ ! [X475 : subst,X476 : subst,X477 : term] : (((X473 @ (comp @ X475 @ X476) @ (sub @ X477 @ X476))) = ((sub @ (X473 @ X475 @ X477) @ X476))))))))) <=> hoasinduction_no_psi_cond_lthm) & ! [X478 : d_subst,X479 : d_subst] : ((((d2subst @ X479)) = ((d2subst @ X478))) => (X478 = X479)) & (! [X480 : term,X481 : (term > $o),X482 : subst] : ~ ! [X483 : (term > $o)] : ~ ! [X484 : term] : (((X483 @ X484)) = ((X481 @ (sub @ X484 @ (push @ X480 @ X482))))) <=> pushprop_lem0) & (((comp @ (d2subst @ d_id) @ (d2subst @ d_id))) = ((d2subst @ d_id))) & apnotvar & hoaslaminj_gthm & pushprop_lem1v2_gthm & pushprop_lem0_gthm & hoasinduction_lem3_gthm & (hoaslamnotap <=> ! [X485 : term,X486 : term,X487 : (subst > term > term)] : ((((lam @ (X487 @ sh @ one))) != ((ap @ (sub @ X486 @ id) @ X485))) | ~ ! [X488 : term,X489 : subst,X490 : subst] : (((X487 @ (comp @ X489 @ X490) @ (sub @ X488 @ X490))) = ((sub @ (X487 @ X489 @ X488) @ X490))))) & (substmonoid_lthm <=> (! [X491 : subst] : (((comp @ id @ X491)) = X491) => (! [X492 : subst] : (((comp @ X492 @ id)) = X492) => (! [X493 : subst] : (((comp @ id @ X493)) = X493) & ! [X494 : subst] : (((comp @ X494 @ id)) = X494))))) & (laminj <=> ! [X495 : term,X496 : term] : ((((lam @ X495)) != ((lam @ X496))) | (X495 = X496))) & (((hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one))) = ((d2term @ d_one))) & (apinj2 <=> ! [X497 : term,X498 : term,X499 : term,X500 : term] : ((X499 = X500) | (((ap @ X497 @ X499)) != ((ap @ X498 @ X500))))) & termmset_gthm & (axvarcons <=> ! [X501 : term,X502 : subst] : (((sub @ one @ (push @ X501 @ X502))) = X501)) & ! [X503 : subst] : ? [X504 : d_subst] : (((d2subst @ X504)) = X503) & (! [X505 : term,X506 : term,X507 : term,X508 : term] : ((((ap @ (sub @ X507 @ id) @ X506)) != ((ap @ (sub @ X508 @ id) @ X505))) | (X507 = X508)) <=> hoasapinj1) & (! [X509 : (subst > term > subst > $o)] : ~ ! [X510 : (term > $o)] : ~ ! [X511 : term] : (((X509 @ id @ X511 @ id)) = ((X510 @ X511))) <=> hoasinduction_lem0_lthm) & ((! [X512 : term] : (((sub @ X512 @ id)) = X512) => (! [X513 : term,X514 : term,X515 : term,X516 : term] : ((X513 = X516) | (((ap @ X513 @ X515)) != ((ap @ X516 @ X514)))) => ! [X517 : term,X518 : term,X519 : term,X520 : term] : ((((ap @ (sub @ X518 @ id) @ X519)) != ((ap @ (sub @ X520 @ id) @ X517))) | (X518 = X520)))) <=> hoasapinj1_lthm) & (hoasinduction_lem3v2_f <=> ! [X521 : term] : ~ ! [X522 : (subst > term > term)] : ~ ! [X523 : term,X524 : subst] : (((X522 @ X524 @ X523)) = ((sub @ X521 @ (push @ X523 @ X524))))) & hoasinduction_lem2v2_gthm & axclos & hoasinduction_lem2_gthm & pushprop_lem2v2_gthm & hoaslamnotvar & axassoc & (! [X525 : (subst > term > subst > $o)] : ~ ! [X526 : (term > $o)] : ~ ! [X527 : term] : (((X526 @ X527)) = ((X525 @ id @ X527 @ id))) <=> hoasinduction_lem0) & (pushprop_p_and_p_prime = (^[X528 : term, X529 : subst, X530 : (term > $o), X531 : (term > $o)] : (! [X532 : term] : (((X530 @ (sub @ X532 @ (push @ X528 @ X529)))) = ((X531 @ X532)))))) & ulamvarsh & axvarshift & pushprop_lem2v2_lthm & (! [X533 : term,X534 : (term > $o)] : (~ ! [X535 : term] : (~(X534 @ X535) | (X534 @ (lam @ X535))) | ~ ! [X536 : term,X537 : term] : (~(X534 @ X537) | ~(X534 @ X536) | (X534 @ (ap @ X536 @ X537))) | ~ ! [X538 : term] : ((X534 @ X538) | ~(var @ X538)) | (X534 @ X533)) <=> induction) & pushprop_lem2v2 & (hoaslaminj <=> ! [X539 : subst,X540 : (subst > term > term),X541 : (subst > term > term),X542 : term] : (~ ! [X543 : subst,X544 : term,X545 : subst] : (((X541 @ (comp @ X545 @ X543) @ (sub @ X544 @ X543))) = ((sub @ (X541 @ X545 @ X544) @ X543))) | ~ ! [X546 : term,X547 : subst,X548 : subst] : (((X540 @ (comp @ X547 @ X548) @ (sub @ X546 @ X548))) = ((sub @ (X540 @ X547 @ X546) @ X548))) | (((X541 @ X539 @ X542)) = ((X540 @ X539 @ X542))) | (((lam @ (X540 @ sh @ one))) != ((lam @ (X541 @ sh @ one)))))) & (id = ((d2subst @ d_id))) & (((push @ (d2term @ d_one) @ (d2subst @ d_id))) = ((d2subst @ d_id))) & (! [X549 : term] : (((sub @ X549 @ id)) = X549) <=> termmset) & substmonoid_gthm),
  inference(rectify,[],[f1])).
thf(f7,plain,(
  (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y1 @ Y2) = (Y0 @ id @ Y2 @ id)))))))) & (pushprop_lem3v2_lthm = $true) & (! [X3 : term,X4 : (subst > term > subst > $o)] : (~ ! [X5 : (subst > term > term)] : (~ ! [X6 : subst,X7 : subst,X8 : term] : (((X5 @ (comp @ X6 @ X7) @ (sub @ X8 @ X7))) = ((sub @ (X5 @ X6 @ X8) @ X7))) | ~ ! [X9 : term] : (~ (((X4 @ id @ X9 @ id)) = $true) | ($true = ((X4 @ id @ (X5 @ id @ X9) @ id)))) | (((X4 @ id @ (lam @ (X5 @ sh @ one)) @ id)) = $true)) | ($true = ((X4 @ id @ (lam @ (sub @ X3 @ (push @ one @ sh))) @ id))) | ~ ! [X10 : term] : (~ (((X4 @ id @ X10 @ id)) = $true) | ($true = ((X4 @ id @ (sub @ X3 @ (push @ X10 @ id)) @ id))))) <=> (hoasinduction_lem3aa = $true)) & (! [X11 : subst] : (((comp @ X11 @ id)) = X11) <=> (axidr = $true)) & (! [X12 : subst] : (((comp @ id @ X12)) = X12) <=> (axidl = $true)) & ((induction2 = $true) <=> ! [X13 : (term > $o),X14 : term] : (($true = ((X13 @ X14))) | ~ ! [X15 : term] : ((((X13 @ X15)) = $true) | ~ (((var @ X15)) = $true)) | ~ ! [X16 : term,X17 : term] : (($true = ((X13 @ (ap @ X17 @ X16)))) | ~ (((X13 @ X17)) = $true) | ~ ($true = ((X13 @ X16)))) | ~ ! [X18 : term] : (~ ! [X19 : term] : (~ ($true = ((X13 @ X19))) | ($true = ((X13 @ (sub @ X18 @ (push @ X19 @ id)))))) | (((X13 @ (lam @ X18))) = $true)))) & (hoasinduction_lem1v2_gthm = $true) & (! [X20 : term,X21 : (subst > term > subst > $o)] : (~ ! [X22 : term,X23 : term] : (~ ($true = ((X21 @ id @ X23 @ id))) | ($true = ((X21 @ id @ (ap @ (sub @ X22 @ id) @ X23) @ id))) | ~ ($true = ((X21 @ id @ X22 @ id)))) | ~ ! [X24 : term] : (~ ($true = ((var @ (sub @ X24 @ id)))) | (((X21 @ id @ X24 @ id)) = $true)) | ~ ! [X25 : subst,X26 : subst,X27 : subst,X28 : term] : ((((X21 @ (comp @ X25 @ X27) @ (sub @ X28 @ X27) @ X26)) = $true) | ~ ($true = ((X21 @ X25 @ X28 @ (comp @ X27 @ X26))))) | (((X21 @ id @ X20 @ id)) = $true) | ~ ! [X29 : (subst > term > term)] : (~ ! [X30 : subst,X31 : subst,X32 : term] : (((X29 @ (comp @ X30 @ X31) @ (sub @ X32 @ X31))) = ((sub @ (X29 @ X30 @ X32) @ X31))) | ($true = ((X21 @ id @ (lam @ (X29 @ sh @ one)) @ id))) | ~ ! [X33 : term] : (~ ($true = ((X21 @ id @ X33 @ id))) | ($true = ((X21 @ id @ (X29 @ id @ X33) @ id))))) | ~ ! [X34 : subst,X35 : term,X36 : subst,X37 : subst] : (~ ($true = ((X21 @ (comp @ X34 @ X36) @ (sub @ X35 @ X36) @ X37))) | (((X21 @ X34 @ X35 @ (comp @ X36 @ X37))) = $true))) <=> (hoasinduction = $true)) & (pushprop_lem3v2 = $true) & ! [X38 : d_subst] : (d_id = X38) & ((induction2_lthm = $true) <=> (! [X39 : term] : (((sub @ X39 @ id)) = X39) => (! [X40 : subst,X41 : (term > $o),X42 : term] : (~ ! [X43 : term] : (($true = ((X41 @ (lam @ X43)))) | ~ ! [X44 : term] : (($true = ((X41 @ (sub @ X43 @ (push @ X44 @ id))))) | ~ ($true = ((X41 @ X44))))) | ~ ! [X45 : term,X46 : term] : (~ (((X41 @ X46)) = $true) | (((X41 @ (ap @ X45 @ X46))) = $true) | ~ (((X41 @ X45)) = $true)) | ~ ! [X47 : term] : ((((X41 @ (sub @ X47 @ X40))) = $true) | ~ ($true = ((var @ X47)))) | (((X41 @ (sub @ X42 @ X40))) = $true)) => ! [X48 : term,X49 : (term > $o)] : ((((X49 @ X48)) = $true) | ~ ! [X50 : term] : (($true = ((X49 @ X50))) | ~ ($true = ((var @ X50)))) | ~ ! [X51 : term,X52 : term] : ((((X49 @ (ap @ X52 @ X51))) = $true) | ~ ($true = ((X49 @ X52))) | ~ ($true = ((X49 @ X51)))) | ~ ! [X53 : term] : ((((X49 @ (lam @ X53))) = $true) | ~ ! [X54 : term] : (~ (((X49 @ X54)) = $true) | ($true = ((X49 @ (sub @ X53 @ (push @ X54 @ id))))))))))) & (! [X55 : (term > $o),X56 : subst,X57 : term] : (~ ! [X58 : term] : (~ ($true = ((var @ X58))) | (((X55 @ (sub @ X58 @ X56))) = $true)) | ~ ! [X59 : term,X60 : term] : (($true = ((X55 @ (ap @ X59 @ X60)))) | ~ ($true = ((X55 @ X59))) | ~ (((X55 @ X60)) = $true)) | ($true = ((X55 @ (sub @ X57 @ X56)))) | ~ ! [X61 : term] : (~ ! [X62 : term] : (~ ($true = ((X55 @ X62))) | (((X55 @ (sub @ X61 @ (push @ X62 @ id)))) = $true)) | (((X55 @ (lam @ X61))) = $true))) <=> (induction2lem = $true)) & (ulamvarind = $true) & ((hoasinduction_lem3 = $true) <=> ! [X63 : (subst > term > subst > $o),X64 : term] : (($true = ((X63 @ id @ (lam @ X64) @ id))) | ~ ! [X65 : (subst > term > term)] : ((((X63 @ id @ (lam @ (X65 @ sh @ one)) @ id)) = $true) | ~ ! [X66 : term,X67 : subst,X68 : subst] : (((X65 @ (comp @ X67 @ X68) @ (sub @ X66 @ X68))) = ((sub @ (X65 @ X67 @ X66) @ X68))) | ~ ! [X69 : term] : (~ ($true = ((X63 @ id @ X69 @ id))) | ($true = ((X63 @ id @ (X65 @ id @ X69) @ id))))) | ~ ! [X70 : term,X71 : subst,X72 : subst,X73 : subst] : (~ ($true = ((X63 @ (comp @ X71 @ X72) @ (sub @ X70 @ X72) @ X73))) | ($true = ((X63 @ X71 @ X70 @ (comp @ X72 @ X73))))) | ~ ! [X74 : subst,X75 : term,X76 : subst,X77 : subst] : ((((X63 @ (comp @ X76 @ X77) @ (sub @ X75 @ X77) @ X74)) = $true) | ~ ($true = ((X63 @ X76 @ X75 @ (comp @ X77 @ X74))))) | ~ ! [X78 : term] : (~ ($true = ((X63 @ id @ X78 @ id))) | (((X63 @ id @ (sub @ X64 @ (push @ X78 @ id)) @ id)) = $true)))) & (pushprop_lthm = $true) & (hoasapnotvar = $true) & (hoaslamnotap_lthm = $true) & (hoasinduction_lem3a_gthm = $true) & (((d2subst @ d_id)) = sh) & ((! [X79 : subst] : (((comp @ id @ X79)) = X79) & ! [X80 : subst] : (((comp @ X80 @ id)) = X80)) <=> (substmonoid = $true)) & (hoasinduction_lem1v2 = $true) & ((hoasinduction_lem3v2a = $true) <=> ! [X81 : (term > $o),X82 : term,X83 : (subst > term > subst > $o)] : (~ ! [X84 : term] : (((X81 @ X84)) = ((X83 @ id @ X84 @ id))) | ~ ! [X85 : (subst > term > term)] : (($true = ((X83 @ id @ (lam @ (X85 @ sh @ one)) @ id))) | ~ ! [X86 : term] : (~ ($true = ((X83 @ id @ X86 @ id))) | (((X83 @ id @ (X85 @ id @ X86) @ id)) = $true)) | ~ ! [X87 : subst,X88 : term,X89 : subst] : (((sub @ (X85 @ X87 @ X88) @ X89)) = ((X85 @ (comp @ X87 @ X89) @ (sub @ X88 @ X89))))) | ($true = ((X81 @ (lam @ X82)))) | ~ ! [X90 : term] : ((((X81 @ (sub @ X82 @ (push @ X90 @ id)))) = $true) | ~ (((X81 @ X90)) = $true)))) & (pushprop_gthm = $true) & (((d2term @ d_one)) = ((ap @ (d2term @ d_one) @ (d2term @ d_one)))) & ((! [X91 : term] : (((sub @ X91 @ id)) = X91) => ! [X92 : term,X93 : (term > $o),X94 : (subst > term > subst > $o)] : ((((X93 @ (lam @ X92))) = $true) | ~ ! [X95 : (subst > term > term)] : (~ ! [X96 : subst,X97 : term,X98 : subst] : (((X95 @ (comp @ X98 @ X96) @ (sub @ X97 @ X96))) = ((sub @ (X95 @ X98 @ X97) @ X96))) | ~ ! [X99 : term] : (~ ($true = ((X94 @ id @ X99 @ id))) | ($true = ((X94 @ id @ (X95 @ id @ X99) @ id)))) | ($true = ((X94 @ id @ (lam @ (X95 @ sh @ one)) @ id)))) | ~ ! [X100 : term] : (((X94 @ id @ X100 @ id)) = ((X93 @ X100))) | ~ ! [X101 : term] : (($true = ((X93 @ (sub @ X92 @ (push @ X101 @ id))))) | ~ ($true = ((X93 @ X101)))) | ~ ! [X102 : subst,X103 : subst,X104 : subst,X105 : term] : (~ ($true = ((X94 @ X102 @ X105 @ (comp @ X104 @ X103)))) | ($true = ((X94 @ (comp @ X102 @ X104) @ (sub @ X105 @ X104) @ X103)))) | ~ ! [X106 : subst,X107 : term,X108 : subst,X109 : subst] : ((((X94 @ X109 @ X107 @ (comp @ X106 @ X108))) = $true) | ~ ($true = ((X94 @ (comp @ X109 @ X106) @ (sub @ X107 @ X106) @ X108)))))) <=> (hoasinduction_lem3v2_lthm = $true)) & ((pushprop_lem1_lthm = $true) <=> (! [X110 : term,X111 : subst] : (((sub @ one @ (push @ X110 @ X111))) = X110) => (! [X112 : subst,X113 : term] : (((comp @ sh @ (push @ X113 @ X112))) = X112) => ! [X114 : term,X115 : (term > $o),X116 : (term > $o),X117 : term,X118 : subst] : (~ (((X115 @ X114)) = $true) | ($true = ((X116 @ (sub @ X114 @ (push @ X117 @ X118))))))))) & ((hoasinduction_lem3v2 = $true) <=> ! [X119 : (subst > term > subst > $o),X120 : (term > $o),X121 : term] : (~ ! [X122 : (subst > term > term)] : ((((X119 @ id @ (lam @ (X122 @ sh @ one)) @ id)) = $true) | ~ ! [X123 : subst,X124 : subst,X125 : term] : (((X122 @ (comp @ X124 @ X123) @ (sub @ X125 @ X123))) = ((sub @ (X122 @ X124 @ X125) @ X123))) | ~ ! [X126 : term] : (~ ($true = ((X119 @ id @ X126 @ id))) | (((X119 @ id @ (X122 @ id @ X126) @ id)) = $true))) | ~ ! [X127 : term] : (($true = ((X120 @ (sub @ X121 @ (push @ X127 @ id))))) | ~ ($true = ((X120 @ X127)))) | ~ ! [X128 : subst,X129 : subst,X130 : term,X131 : subst] : ((((X119 @ X128 @ X130 @ (comp @ X131 @ X129))) = $true) | ~ (((X119 @ (comp @ X128 @ X131) @ (sub @ X130 @ X131) @ X129)) = $true)) | ~ ! [X132 : subst,X133 : subst,X134 : subst,X135 : term] : (~ (((X119 @ X132 @ X135 @ (comp @ X133 @ X134))) = $true) | ($true = ((X119 @ (comp @ X132 @ X133) @ (sub @ X135 @ X133) @ X134)))) | ~ ! [X136 : term] : (((X120 @ X136)) = ((X119 @ id @ X136 @ id))) | ($true = ((X120 @ (lam @ X121)))))) & ~ (((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id))) = $true) & (! [X137 : term,X138 : term,X139 : (subst > term > subst > $o),X140 : (term > $o)] : (~ ($true = ((X140 @ X138))) | ~ ! [X141 : term,X142 : subst,X143 : subst,X144 : subst] : (~ ($true = ((X139 @ X143 @ X141 @ (comp @ X144 @ X142)))) | ($true = ((X139 @ (comp @ X143 @ X144) @ (sub @ X141 @ X144) @ X142)))) | ~ ! [X145 : subst,X146 : term,X147 : subst,X148 : subst] : (($true = ((X139 @ X145 @ X146 @ (comp @ X148 @ X147)))) | ~ ($true = ((X139 @ (comp @ X145 @ X148) @ (sub @ X146 @ X148) @ X147)))) | ~ ! [X149 : term] : (((X139 @ id @ X149 @ id)) = ((X140 @ X149))) | ($true = ((X140 @ (ap @ X138 @ X137)))) | ~ ! [X150 : term,X151 : term] : (~ (((X139 @ id @ X150 @ id)) = $true) | ~ ($true = ((X139 @ id @ X151 @ id))) | ($true = ((X139 @ id @ (ap @ (sub @ X151 @ id) @ X150) @ id)))) | ~ ($true = ((X140 @ X137)))) <=> (hoasinduction_lem2v2 = $true)) & (hoaslamnotap_gthm = $true) & ! [X152 : d_term] : (d_one = X152) & ((! [X153 : (subst > term > subst > $o)] : ~ ! [X154 : (term > $o)] : ~ ! [X155 : term] : (((X154 @ X155)) = ((X153 @ id @ X155 @ id))) => (! [X156 : (term > $o),X157 : term] : (~ ! [X158 : term,X159 : term] : (($true = ((X156 @ (ap @ X159 @ X158)))) | ~ (((X156 @ X159)) = $true) | ~ (((X156 @ X158)) = $true)) | ~ ! [X160 : term] : (~ ! [X161 : term] : (~ (((X156 @ X161)) = $true) | (((X156 @ (sub @ X160 @ (push @ X161 @ id)))) = $true)) | (((X156 @ (lam @ X160))) = $true)) | (((X156 @ X157)) = $true) | ~ ! [X162 : term] : ((((X156 @ X162)) = $true) | ~ (((var @ X162)) = $true))) => (! [X163 : term] : (((sub @ X163 @ id)) = X163) => (! [X164 : (term > $o),X165 : term,X166 : (subst > term > subst > $o)] : (~ ! [X167 : (subst > term > term)] : (~ ! [X168 : term,X169 : subst,X170 : subst] : (((X167 @ (comp @ X169 @ X170) @ (sub @ X168 @ X170))) = ((sub @ (X167 @ X169 @ X168) @ X170))) | ($true = ((X166 @ id @ (lam @ (X167 @ sh @ one)) @ id))) | ~ ! [X171 : term] : (~ (((X166 @ id @ X171 @ id)) = $true) | ($true = ((X166 @ id @ (X167 @ id @ X171) @ id))))) | ~ ! [X172 : term] : ((((X164 @ (sub @ X165 @ (push @ X172 @ id)))) = $true) | ~ (((X164 @ X172)) = $true)) | ~ ! [X173 : term] : (((X164 @ X173)) = ((X166 @ id @ X173 @ id))) | ($true = ((X164 @ (lam @ X165))))) => ! [X174 : term,X175 : (subst > term > subst > $o)] : (~ ! [X176 : term] : (($true = ((X175 @ id @ X176 @ id))) | ~ ($true = ((var @ (sub @ X176 @ id))))) | ~ ! [X177 : term,X178 : term] : (($true = ((X175 @ id @ (ap @ (sub @ X177 @ id) @ X178) @ id))) | ~ (((X175 @ id @ X178 @ id)) = $true) | ~ (((X175 @ id @ X177 @ id)) = $true)) | ~ ! [X179 : subst,X180 : subst,X181 : subst,X182 : term] : (($true = ((X175 @ (comp @ X181 @ X179) @ (sub @ X182 @ X179) @ X180))) | ~ ($true = ((X175 @ X181 @ X182 @ (comp @ X179 @ X180))))) | ~ ! [X183 : term,X184 : subst,X185 : subst,X186 : subst] : ((((X175 @ X186 @ X183 @ (comp @ X184 @ X185))) = $true) | ~ ($true = ((X175 @ (comp @ X186 @ X184) @ (sub @ X183 @ X184) @ X185)))) | ($true = ((X175 @ id @ X174 @ id))) | ~ ! [X187 : (subst > term > term)] : (~ ! [X188 : term] : (~ (((X175 @ id @ X188 @ id)) = $true) | ($true = ((X175 @ id @ (X187 @ id @ X188) @ id)))) | ~ ! [X189 : term,X190 : subst,X191 : subst] : (((X187 @ (comp @ X191 @ X190) @ (sub @ X189 @ X190))) = ((sub @ (X187 @ X191 @ X189) @ X190))) | (((X175 @ id @ (lam @ (X187 @ sh @ one)) @ id)) = $true))))))) <=> (hoasinduction_lthm_3 = $true)) & ((pushprop_lem0_lthm = $true) <=> ! [X192 : subst,X193 : (term > $o),X194 : term] : ~ ! [X195 : (term > $o)] : ~ ! [X196 : term] : (((X193 @ (sub @ X196 @ (push @ X194 @ X192)))) = ((X195 @ X196)))) & (hoasinduction_lem3b_gthm = $true) & ((! [X197 : term] : (((sub @ X197 @ id)) = X197) => ! [X198 : term] : (((sub @ X198 @ id)) = X198)) <=> (termmset_lthm = $true)) & (hoasapnotvar_lthm = $true) & ((! [X199 : term,X200 : (term > $o)] : (($true = ((X200 @ X199))) | ~ ! [X201 : term] : (~ ($true = ((var @ X201))) | (((X200 @ X201)) = $true)) | ~ ! [X202 : term,X203 : term] : (~ ($true = ((X200 @ X202))) | ~ ($true = ((X200 @ X203))) | (((X200 @ (ap @ X203 @ X202))) = $true)) | ~ ! [X204 : term] : (~ ! [X205 : term] : ((((X200 @ (sub @ X204 @ (push @ X205 @ id)))) = $true) | ~ ($true = ((X200 @ X205)))) | (((X200 @ (lam @ X204))) = $true))) => (! [X206 : term,X207 : term,X208 : (subst > term > subst > $o)] : (($true = ((X208 @ id @ (ap @ X207 @ X206) @ id))) | ~ ($true = ((X208 @ id @ X206 @ id))) | ~ ! [X209 : subst,X210 : subst,X211 : term,X212 : subst] : ((((X208 @ (comp @ X210 @ X212) @ (sub @ X211 @ X212) @ X209)) = $true) | ~ (((X208 @ X210 @ X211 @ (comp @ X212 @ X209))) = $true)) | ~ ! [X213 : term,X214 : term] : (~ ($true = ((X208 @ id @ X213 @ id))) | ~ (((X208 @ id @ X214 @ id)) = $true) | ($true = ((X208 @ id @ (ap @ (sub @ X213 @ id) @ X214) @ id)))) | ~ (((X208 @ id @ X207 @ id)) = $true) | ~ ! [X215 : subst,X216 : subst,X217 : subst,X218 : term] : (($true = ((X208 @ X216 @ X218 @ (comp @ X217 @ X215)))) | ~ (((X208 @ (comp @ X216 @ X217) @ (sub @ X218 @ X217) @ X215)) = $true))) => (! [X219 : term,X220 : (subst > term > subst > $o)] : (~ ! [X221 : term] : ((((X220 @ id @ (sub @ X219 @ (push @ X221 @ id)) @ id)) = $true) | ~ ($true = ((X220 @ id @ X221 @ id)))) | ($true = ((X220 @ id @ (lam @ X219) @ id))) | ~ ! [X222 : term,X223 : subst,X224 : subst,X225 : subst] : (($true = ((X220 @ X223 @ X222 @ (comp @ X225 @ X224)))) | ~ (((X220 @ (comp @ X223 @ X225) @ (sub @ X222 @ X225) @ X224)) = $true)) | ~ ! [X226 : term,X227 : subst,X228 : subst,X229 : subst] : (($true = ((X220 @ (comp @ X229 @ X227) @ (sub @ X226 @ X227) @ X228))) | ~ ($true = ((X220 @ X229 @ X226 @ (comp @ X227 @ X228))))) | ~ ! [X230 : (subst > term > term)] : (~ ! [X231 : term,X232 : subst,X233 : subst] : (((X230 @ (comp @ X233 @ X232) @ (sub @ X231 @ X232))) = ((sub @ (X230 @ X233 @ X231) @ X232))) | ~ ! [X234 : term] : (~ ($true = ((X220 @ id @ X234 @ id))) | (((X220 @ id @ (X230 @ id @ X234) @ id)) = $true)) | ($true = ((X220 @ id @ (lam @ (X230 @ sh @ one)) @ id))))) => ! [X235 : (subst > term > subst > $o),X236 : term] : (~ ! [X237 : term,X238 : subst,X239 : subst,X240 : subst] : (~ (((X235 @ (comp @ X239 @ X240) @ (sub @ X237 @ X240) @ X238)) = $true) | (((X235 @ X239 @ X237 @ (comp @ X240 @ X238))) = $true)) | ~ ! [X241 : term,X242 : term] : (~ ($true = ((X235 @ id @ X241 @ id))) | ($true = ((X235 @ id @ (ap @ (sub @ X242 @ id) @ X241) @ id))) | ~ (((X235 @ id @ X242 @ id)) = $true)) | ~ ! [X243 : subst,X244 : subst,X245 : subst,X246 : term] : ((((X235 @ (comp @ X244 @ X245) @ (sub @ X246 @ X245) @ X243)) = $true) | ~ (((X235 @ X244 @ X246 @ (comp @ X245 @ X243))) = $true)) | ~ ! [X247 : term] : (~ ($true = ((var @ (sub @ X247 @ id)))) | (((X235 @ id @ X247 @ id)) = $true)) | ~ ! [X248 : (subst > term > term)] : (~ ! [X249 : subst,X250 : subst,X251 : term] : (((sub @ (X248 @ X249 @ X251) @ X250)) = ((X248 @ (comp @ X249 @ X250) @ (sub @ X251 @ X250)))) | ~ ! [X252 : term] : (~ (((X235 @ id @ X252 @ id)) = $true) | ($true = ((X235 @ id @ (X248 @ id @ X252) @ id)))) | ($true = ((X235 @ id @ (lam @ (X248 @ sh @ one)) @ id)))) | ($true = ((X235 @ id @ X236 @ id))))))) <=> (hoasinduction_lthm = $true)) & (hoasapinj2_gthm = $true) & ~ (((var @ (d2term @ d_one))) = $true) & (hoasapnotvar_gthm = $true) & (hoasapinj1_gthm = $true) & ((hoasinduction_lem2 = $true) <=> ! [X253 : (subst > term > subst > $o),X254 : term,X255 : term] : (~ ! [X256 : term,X257 : term] : (~ ($true = ((X253 @ id @ X257 @ id))) | (((X253 @ id @ (ap @ (sub @ X257 @ id) @ X256) @ id)) = $true) | ~ (((X253 @ id @ X256 @ id)) = $true)) | ~ ($true = ((X253 @ id @ X254 @ id))) | ~ ! [X258 : term,X259 : subst,X260 : subst,X261 : subst] : (~ ($true = ((X253 @ X261 @ X258 @ (comp @ X260 @ X259)))) | ($true = ((X253 @ (comp @ X261 @ X260) @ (sub @ X258 @ X260) @ X259)))) | ~ ! [X262 : term,X263 : subst,X264 : subst,X265 : subst] : (~ ($true = ((X253 @ (comp @ X264 @ X265) @ (sub @ X262 @ X265) @ X263))) | (((X253 @ X264 @ X262 @ (comp @ X265 @ X263))) = $true)) | ~ ($true = ((X253 @ id @ X255 @ id))) | ($true = ((X253 @ id @ (ap @ X254 @ X255) @ id))))) & (induction2_gthm = $true) & ((! [X266 : subst,X267 : term] : (((sub @ one @ (push @ X267 @ X266))) = X267) => (! [X268 : term,X269 : subst] : (((comp @ sh @ (push @ X268 @ X269))) = X269) => (! [X270 : subst] : (((comp @ X270 @ id)) = X270) => (! [X271 : (term > $o),X272 : term] : (~ ! [X273 : term] : (~ (((var @ X273)) = $true) | (((X271 @ X273)) = $true)) | ($true = ((X271 @ X272))) | ~ ! [X274 : term] : (($true = ((X271 @ (lam @ X274)))) | ~ ($true = ((X271 @ X274)))) | ~ ! [X275 : term,X276 : term] : (~ ($true = ((X271 @ X276))) | ~ ($true = ((X271 @ X275))) | (((X271 @ (ap @ X275 @ X276))) = $true))) => ! [X277 : (term > $o),X278 : subst,X279 : term] : (~ ! [X280 : term] : (($true = ((X277 @ (lam @ X280)))) | ~ ! [X281 : term] : (~ ($true = ((X277 @ X281))) | ($true = ((X277 @ (sub @ X280 @ (push @ X281 @ id))))))) | ($true = ((X277 @ (sub @ X279 @ X278)))) | ~ ! [X282 : term,X283 : term] : (~ ($true = ((X277 @ X282))) | ($true = ((X277 @ (ap @ X283 @ X282)))) | ~ ($true = ((X277 @ X283)))) | ~ ! [X284 : term] : (~ ($true = ((var @ X284))) | (((X277 @ (sub @ X284 @ X278))) = $true))))))) <=> (induction2lem_lthm = $true)) & ((pushprop_lem1v2 = $true) <=> ! [X285 : (term > $o),X286 : (term > $o),X287 : subst,X288 : term] : (~ ! [X289 : term] : (((X285 @ X289)) = ((X286 @ (sub @ X289 @ (push @ X288 @ X287))))) | ($true = ((X285 @ one))) | ~ (((X286 @ X288)) = $true))) & ((hoasinduction_lem3a = $true) <=> ! [X290 : (subst > term > subst > $o),X291 : term] : (~ ! [X292 : (subst > term > term)] : ((((X290 @ id @ (lam @ (X292 @ sh @ one)) @ id)) = $true) | ~ ! [X293 : term] : (~ (((X290 @ id @ X293 @ id)) = $true) | (((X290 @ id @ (X292 @ id @ X293) @ id)) = $true)) | ~ ! [X294 : subst,X295 : subst,X296 : term] : (((sub @ (X292 @ X295 @ X296) @ X294)) = ((X292 @ (comp @ X295 @ X294) @ (sub @ X296 @ X294))))) | ($true = ((X290 @ id @ (lam @ X291) @ id))) | ~ ! [X297 : term] : (($true = ((X290 @ id @ (sub @ X291 @ (push @ X297 @ id)) @ id))) | ~ ($true = ((X290 @ id @ X297 @ id)))))) & ((shinj = $true) <=> ! [X298 : term,X299 : term] : ((((sub @ X298 @ sh)) != ((sub @ X299 @ sh))) | (X298 = X299))) & ((! [X300 : subst,X301 : term] : (((sub @ one @ (push @ X301 @ X300))) = X301) => (! [X302 : term,X303 : subst] : (((comp @ sh @ (push @ X302 @ X303))) = X303) => (! [X304 : term,X305 : term] : ((X304 = X305) | (((lam @ X305)) != ((lam @ X304)))) => ! [X306 : (subst > term > term),X307 : subst,X308 : term,X309 : (subst > term > term)] : (~ ! [X310 : term,X311 : subst,X312 : subst] : (((sub @ (X306 @ X311 @ X310) @ X312)) = ((X306 @ (comp @ X311 @ X312) @ (sub @ X310 @ X312)))) | ~ ! [X313 : subst,X314 : term,X315 : subst] : (((X309 @ (comp @ X313 @ X315) @ (sub @ X314 @ X315))) = ((sub @ (X309 @ X313 @ X314) @ X315))) | (((X306 @ X307 @ X308)) = ((X309 @ X307 @ X308))) | (((lam @ (X309 @ sh @ one))) != ((lam @ (X306 @ sh @ one)))))))) <=> (hoaslaminj_lthm = $true)) & (pushprop_lthm_orig = $true) & ((hoasapinj2_lthm = $true) <=> (! [X316 : term,X317 : term,X318 : term,X319 : term] : ((X318 = X319) | (((ap @ X317 @ X319)) != ((ap @ X316 @ X318)))) => ! [X320 : term,X321 : term,X322 : term,X323 : term] : ((((ap @ (sub @ X320 @ id) @ X322)) != ((ap @ (sub @ X323 @ id) @ X321))) | (X321 = X322)))) & ((hoasinduction_no_psi_cond = $true) <=> ! [X324 : term,X325 : (subst > term > subst > $o)] : (~ ! [X326 : term,X327 : term] : ((((X325 @ id @ (ap @ (sub @ X326 @ id) @ X327) @ id)) = $true) | ~ (((X325 @ id @ X327 @ id)) = $true) | ~ ($true = ((X325 @ id @ X326 @ id)))) | ~ ! [X328 : (subst > term > term)] : (~ ! [X329 : term] : (~ ($true = ((X325 @ id @ X329 @ id))) | (((X325 @ id @ (X328 @ id @ X329) @ id)) = $true)) | ~ ! [X330 : subst,X331 : term,X332 : subst] : (((X328 @ (comp @ X332 @ X330) @ (sub @ X331 @ X330))) = ((sub @ (X328 @ X332 @ X331) @ X330))) | (((X325 @ id @ (lam @ (X328 @ sh @ one)) @ id)) = $true)) | ($true = ((X325 @ id @ X324 @ id))))) & (hoaslamnotvar_gthm = $true) & ((hoasinduction_lem3aa_lthm = $true) <=> ! [X333 : term,X334 : (subst > term > subst > $o)] : (~ ! [X335 : (subst > term > term)] : ((((X334 @ id @ (lam @ (X335 @ sh @ one)) @ id)) = $true) | ~ ! [X336 : term] : (~ ($true = ((X334 @ id @ X336 @ id))) | ($true = ((X334 @ id @ (X335 @ id @ X336) @ id)))) | ~ ! [X337 : subst,X338 : subst,X339 : term] : (((X335 @ (comp @ X337 @ X338) @ (sub @ X339 @ X338))) = ((sub @ (X335 @ X337 @ X339) @ X338)))) | (((X334 @ id @ (lam @ (sub @ X333 @ (push @ one @ sh))) @ id)) = $true) | ~ ! [X340 : term] : (~ ($true = ((X334 @ id @ X340 @ id))) | ($true = ((X334 @ id @ (sub @ X333 @ (push @ X340 @ id)) @ id)))))) & (axmap = $true) & (hoasinduction_lem2_lthm = $true) & ((hoasinduction_lem3b = $true) <=> ! [X341 : term] : ~ ! [X342 : (subst > term > term)] : (((X342 @ sh @ one)) != ((sub @ X341 @ (push @ one @ sh))))) & (induction2lem_gthm = $true) & ((apinj1 = $true) <=> ! [X343 : term,X344 : term,X345 : term,X346 : term] : ((((ap @ X345 @ X343)) != ((ap @ X344 @ X346))) | (X344 = X345))) & (axapp = $true) & ~ (lamnotap = $true) & ((! [X347 : term] : (((sub @ X347 @ id)) = X347) => (! [X348 : term,X349 : (subst > term > subst > $o)] : (($true = ((X349 @ id @ (lam @ (sub @ X348 @ (push @ one @ sh))) @ id))) | ~ ! [X350 : term] : (~ ($true = ((X349 @ id @ X350 @ id))) | ($true = ((X349 @ id @ (sub @ X348 @ (push @ X350 @ id)) @ id)))) | ~ ! [X351 : (subst > term > term)] : (~ ! [X352 : term] : (($true = ((X349 @ id @ (X351 @ id @ X352) @ id))) | ~ ($true = ((X349 @ id @ X352 @ id)))) | ~ ! [X353 : term,X354 : subst,X355 : subst] : (((X351 @ (comp @ X355 @ X354) @ (sub @ X353 @ X354))) = ((sub @ (X351 @ X355 @ X353) @ X354))) | ($true = ((X349 @ id @ (lam @ (X351 @ sh @ one)) @ id))))) => ! [X356 : (subst > term > subst > $o),X357 : term] : (~ ! [X358 : term] : (~ ($true = ((X356 @ id @ X358 @ id))) | ($true = ((X356 @ id @ (sub @ X357 @ (push @ X358 @ id)) @ id)))) | ~ ! [X359 : (subst > term > term)] : (~ ! [X360 : term] : (~ ($true = ((X356 @ id @ X360 @ id))) | ($true = ((X356 @ id @ (X359 @ id @ X360) @ id)))) | ($true = ((X356 @ id @ (lam @ (X359 @ sh @ one)) @ id))) | ~ ! [X361 : subst,X362 : subst,X363 : term] : (((X359 @ (comp @ X361 @ X362) @ (sub @ X363 @ X362))) = ((sub @ (X359 @ X361 @ X363) @ X362)))) | ~ ! [X364 : term,X365 : subst,X366 : subst,X367 : subst] : (~ ($true = ((X356 @ (comp @ X366 @ X367) @ (sub @ X364 @ X367) @ X365))) | ($true = ((X356 @ X366 @ X364 @ (comp @ X367 @ X365))))) | ~ ! [X368 : subst,X369 : subst,X370 : term,X371 : subst] : (~ (((X356 @ X369 @ X370 @ (comp @ X368 @ X371))) = $true) | (((X356 @ (comp @ X369 @ X368) @ (sub @ X370 @ X368) @ X371)) = $true)) | ($true = ((X356 @ id @ (lam @ X357) @ id)))))) <=> (hoasinduction_lem3_lthm = $true)) & (hoasinduction_lem3v2_gthm = $true) & (! [X372 : term] : ~ ! [X373 : (subst > term > term)] : ~ ! [X374 : subst,X375 : term] : (((sub @ X372 @ (push @ X375 @ X374))) = ((X373 @ X374 @ X375))) <=> (hoasinduction_lem3v2_f_lthm = $true)) & (pushprop = $true) & ((hoasinduction_lem3b_lthm = $true) <=> ! [X376 : term] : ~ ! [X377 : (subst > term > term)] : (((sub @ X376 @ (push @ one @ sh))) != ((X377 @ sh @ one)))) & (! [X378 : subst] : (((push @ (sub @ one @ X378) @ (comp @ sh @ X378))) = X378) <=> (axscons = $true)) & (((d2term @ d_one)) = one) & (((d2term @ d_one)) = ((sub @ (d2term @ d_one) @ (d2subst @ d_id)))) & (hoasinduction_gthm = $true) & ((hoasapinj2 = $true) <=> ! [X379 : term,X380 : term,X381 : term,X382 : term] : ((X380 = X382) | (((ap @ (sub @ X379 @ id) @ X380)) != ((ap @ (sub @ X381 @ id) @ X382))))) & ((! [X383 : term] : ~ ! [X384 : (subst > term > term)] : ~ ! [X385 : subst,X386 : term] : (((sub @ X383 @ (push @ X386 @ X385))) = ((X384 @ X385 @ X386))) => (! [X387 : term] : (((sub @ X387 @ id)) = X387) => ! [X388 : (subst > term > subst > $o),X389 : term,X390 : (term > $o)] : (($true = ((X390 @ (lam @ X389)))) | ~ ! [X391 : term] : (~ (((X390 @ X391)) = $true) | (((X390 @ (sub @ X389 @ (push @ X391 @ id)))) = $true)) | ~ ! [X392 : term] : (((X390 @ X392)) = ((X388 @ id @ X392 @ id))) | ~ ! [X393 : (subst > term > term)] : (~ ! [X394 : term,X395 : subst,X396 : subst] : (((sub @ (X393 @ X396 @ X394) @ X395)) = ((X393 @ (comp @ X396 @ X395) @ (sub @ X394 @ X395)))) | ~ ! [X397 : term] : ((((X388 @ id @ (X393 @ id @ X397) @ id)) = $true) | ~ ($true = ((X388 @ id @ X397 @ id)))) | ($true = ((X388 @ id @ (lam @ (X393 @ sh @ one)) @ id))))))) <=> (hoasinduction_lem3v2a_lthm = $true)) & ~ (ulamvar1 = $true) & (hoasinduction_lem1_gthm = $true) & (((d2term @ d_one)) = ((lam @ (d2term @ d_one)))) & (hoaslamnotvar_lthm = $true) & (pushprop_lem1_gthm = $true) & ((axshiftcons = $true) <=> ! [X398 : subst,X399 : term] : (((comp @ sh @ (push @ X399 @ X398))) = X398)) & ! [X400 : d_term,X401 : d_term] : ((((d2term @ X401)) = ((d2term @ X400))) => (X400 = X401)) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & ((! [X404 : term,X405 : subst] : (((sub @ one @ (push @ X404 @ X405))) = X404) => ! [X406 : (term > $o),X407 : subst,X408 : (term > $o),X409 : term] : (($true = ((X408 @ one))) | ~ ! [X410 : term] : (((X408 @ X410)) = ((X406 @ (sub @ X410 @ (push @ X409 @ X407))))) | ~ ($true = ((X406 @ X409))))) <=> (pushprop_lem1v2_lthm = $true)) & (hoasinduction_lem1 = $true) & (hoasinduction_lem1_lthm = $true) & (! [X411 : (term > $o),X412 : subst,X413 : term,X414 : (term > $o),X415 : term] : (~ ($true = ((X414 @ X415))) | (((X411 @ (sub @ X415 @ (push @ X413 @ X412)))) = $true)) <=> (pushprop_lem1 = $true)) & (lamnotvar = $true) & (axabs = $true) & ((hoasinduction_lem3aaa = $true) <=> ! [X416 : term,X417 : (subst > term > subst > $o)] : (~ ! [X418 : term] : (($true = ((X417 @ id @ (sub @ X416 @ (push @ X418 @ id)) @ id))) | ~ (((X417 @ id @ X418 @ id)) = $true)) | ($true = ((X417 @ id @ (lam @ (sub @ X416 @ (push @ one @ sh))) @ id))) | ~ ! [X419 : term,X420 : (subst > term > term)] : (~ ! [X421 : term] : (~ ($true = ((X417 @ id @ X421 @ id))) | (((X417 @ id @ (X420 @ id @ X421) @ id)) = $true)) | ($true = ((X417 @ id @ (lam @ (X420 @ sh @ one)) @ id))) | ~ ! [X422 : term,X423 : subst,X424 : subst] : (((sub @ (X420 @ X424 @ X422) @ X423)) = ((sub @ (sub @ X419 @ (push @ X422 @ X424)) @ X423))) | ~ ! [X425 : term,X426 : subst,X427 : subst] : (((X420 @ (comp @ X427 @ X426) @ (sub @ X425 @ X426))) = ((sub @ X419 @ (push @ (sub @ X425 @ X426) @ (comp @ X427 @ X426)))))))) & ((hoasinduction_lem3a_lthm = $true) <=> (! [X428 : term] : (((sub @ X428 @ id)) = X428) => (! [X429 : term,X430 : (subst > term > subst > $o)] : (($true = ((X430 @ id @ (lam @ (sub @ X429 @ (push @ one @ sh))) @ id))) | ~ ! [X431 : (subst > term > term)] : (($true = ((X430 @ id @ (lam @ (X431 @ sh @ one)) @ id))) | ~ ! [X432 : subst,X433 : term,X434 : subst] : (((sub @ (X431 @ X432 @ X433) @ X434)) = ((X431 @ (comp @ X432 @ X434) @ (sub @ X433 @ X434)))) | ~ ! [X435 : term] : (~ (((X430 @ id @ X435 @ id)) = $true) | (((X430 @ id @ (X431 @ id @ X435) @ id)) = $true))) | ~ ! [X436 : term] : (~ ($true = ((X430 @ id @ X436 @ id))) | ($true = ((X430 @ id @ (sub @ X429 @ (push @ X436 @ id)) @ id))))) => ! [X437 : term,X438 : (subst > term > subst > $o)] : (($true = ((X438 @ id @ (lam @ X437) @ id))) | ~ ! [X439 : (subst > term > term)] : (($true = ((X438 @ id @ (lam @ (X439 @ sh @ one)) @ id))) | ~ ! [X440 : term,X441 : subst,X442 : subst] : (((sub @ (X439 @ X441 @ X440) @ X442)) = ((X439 @ (comp @ X441 @ X442) @ (sub @ X440 @ X442)))) | ~ ! [X443 : term] : (~ ($true = ((X438 @ id @ X443 @ id))) | (((X438 @ id @ (X439 @ id @ X443) @ id)) = $true))) | ~ ! [X444 : term] : (~ (((X438 @ id @ X444 @ id)) = $true) | ($true = ((X438 @ id @ (sub @ X437 @ (push @ X444 @ id)) @ id)))))))) & (! [X445 : term] : (((sub @ X445 @ id)) = X445) <=> (axvarid = $true)) & ! [X446 : term] : ? [X447 : d_term] : (((d2term @ X447)) = X446) & ((! [X448 : (subst > term > subst > $o)] : ~ ! [X449 : (term > $o)] : ~ ! [X450 : term] : (((X448 @ id @ X450 @ id)) = ((X449 @ X450))) => (! [X451 : (term > $o),X452 : term] : (($true = ((X451 @ X452))) | ~ ! [X453 : term,X454 : term] : (($true = ((X451 @ (ap @ X454 @ X453)))) | ~ (((X451 @ X454)) = $true) | ~ ($true = ((X451 @ X453)))) | ~ ! [X455 : term] : (~ ! [X456 : term] : (($true = ((X451 @ (sub @ X455 @ (push @ X456 @ id))))) | ~ (((X451 @ X456)) = $true)) | ($true = ((X451 @ (lam @ X455))))) | ~ ! [X457 : term] : (($true = ((X451 @ X457))) | ~ (((var @ X457)) = $true))) => (! [X458 : term] : (((sub @ X458 @ id)) = X458) => (! [X459 : (term > $o),X460 : (subst > term > subst > $o),X461 : term] : (~ ! [X462 : term] : (((X459 @ X462)) = ((X460 @ id @ X462 @ id))) | ($true = ((X459 @ (lam @ X461)))) | ~ ! [X463 : term] : (~ (((X459 @ X463)) = $true) | (((X459 @ (sub @ X461 @ (push @ X463 @ id)))) = $true)) | ~ ! [X464 : (subst > term > term)] : ((((X460 @ id @ (lam @ (X464 @ sh @ one)) @ id)) = $true) | ~ ! [X465 : term] : (~ ($true = ((X460 @ id @ X465 @ id))) | ($true = ((X460 @ id @ (X464 @ id @ X465) @ id)))) | ~ ! [X466 : subst,X467 : subst,X468 : term] : (((X464 @ (comp @ X467 @ X466) @ (sub @ X468 @ X466))) = ((sub @ (X464 @ X467 @ X468) @ X466))))) => ! [X469 : term,X470 : (subst > term > subst > $o)] : (($true = ((X470 @ id @ X469 @ id))) | ~ ! [X471 : term,X472 : term] : (~ (((X470 @ id @ X472 @ id)) = $true) | (((X470 @ id @ (ap @ (sub @ X471 @ id) @ X472) @ id)) = $true) | ~ ($true = ((X470 @ id @ X471 @ id)))) | ~ ! [X473 : (subst > term > term)] : (~ ! [X474 : term] : (($true = ((X470 @ id @ (X473 @ id @ X474) @ id))) | ~ ($true = ((X470 @ id @ X474 @ id)))) | (((X470 @ id @ (lam @ (X473 @ sh @ one)) @ id)) = $true) | ~ ! [X475 : subst,X476 : subst,X477 : term] : (((X473 @ (comp @ X475 @ X476) @ (sub @ X477 @ X476))) = ((sub @ (X473 @ X475 @ X477) @ X476))))))))) <=> (hoasinduction_no_psi_cond_lthm = $true)) & ! [X478 : d_subst,X479 : d_subst] : ((((d2subst @ X479)) = ((d2subst @ X478))) => (X478 = X479)) & (! [X480 : term,X481 : (term > $o),X482 : subst] : ~ ! [X483 : (term > $o)] : ~ ! [X484 : term] : (((X483 @ X484)) = ((X481 @ (sub @ X484 @ (push @ X480 @ X482))))) <=> (pushprop_lem0 = $true)) & (((d2subst @ d_id)) = ((comp @ (d2subst @ d_id) @ (d2subst @ d_id)))) & (apnotvar = $true) & (hoaslaminj_gthm = $true) & (pushprop_lem1v2_gthm = $true) & (pushprop_lem0_gthm = $true) & (hoasinduction_lem3_gthm = $true) & ((hoaslamnotap = $true) <=> ! [X485 : term,X486 : term,X487 : (subst > term > term)] : ((((lam @ (X487 @ sh @ one))) != ((ap @ (sub @ X486 @ id) @ X485))) | ~ ! [X488 : term,X489 : subst,X490 : subst] : (((X487 @ (comp @ X489 @ X490) @ (sub @ X488 @ X490))) = ((sub @ (X487 @ X489 @ X488) @ X490))))) & ((substmonoid_lthm = $true) <=> (! [X491 : subst] : (((comp @ id @ X491)) = X491) => (! [X492 : subst] : (((comp @ X492 @ id)) = X492) => (! [X493 : subst] : (((comp @ id @ X493)) = X493) & ! [X494 : subst] : (((comp @ X494 @ id)) = X494))))) & ((laminj = $true) <=> ! [X495 : term,X496 : term] : ((((lam @ X495)) != ((lam @ X496))) | (X495 = X496))) & (((d2term @ d_one)) = ((hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one)))) & ((apinj2 = $true) <=> ! [X497 : term,X498 : term,X499 : term,X500 : term] : ((X499 = X500) | (((ap @ X497 @ X499)) != ((ap @ X498 @ X500))))) & (termmset_gthm = $true) & ((axvarcons = $true) <=> ! [X501 : term,X502 : subst] : (((sub @ one @ (push @ X501 @ X502))) = X501)) & ! [X503 : subst] : ? [X504 : d_subst] : (((d2subst @ X504)) = X503) & (! [X505 : term,X506 : term,X507 : term,X508 : term] : ((((ap @ (sub @ X507 @ id) @ X506)) != ((ap @ (sub @ X508 @ id) @ X505))) | (X507 = X508)) <=> (hoasapinj1 = $true)) & (! [X509 : (subst > term > subst > $o)] : ~ ! [X510 : (term > $o)] : ~ ! [X511 : term] : (((X509 @ id @ X511 @ id)) = ((X510 @ X511))) <=> (hoasinduction_lem0_lthm = $true)) & ((! [X512 : term] : (((sub @ X512 @ id)) = X512) => (! [X513 : term,X514 : term,X515 : term,X516 : term] : ((X513 = X516) | (((ap @ X513 @ X515)) != ((ap @ X516 @ X514)))) => ! [X517 : term,X518 : term,X519 : term,X520 : term] : ((((ap @ (sub @ X518 @ id) @ X519)) != ((ap @ (sub @ X520 @ id) @ X517))) | (X518 = X520)))) <=> (hoasapinj1_lthm = $true)) & ((hoasinduction_lem3v2_f = $true) <=> ! [X521 : term] : ~ ! [X522 : (subst > term > term)] : ~ ! [X523 : term,X524 : subst] : (((X522 @ X524 @ X523)) = ((sub @ X521 @ (push @ X523 @ X524))))) & (hoasinduction_lem2v2_gthm = $true) & (axclos = $true) & (hoasinduction_lem2_gthm = $true) & (pushprop_lem2v2_gthm = $true) & (hoaslamnotvar = $true) & (axassoc = $true) & (! [X525 : (subst > term > subst > $o)] : ~ ! [X526 : (term > $o)] : ~ ! [X527 : term] : (((X526 @ X527)) = ((X525 @ id @ X527 @ id))) <=> (hoasinduction_lem0 = $true)) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & (ulamvarsh = $true) & (axvarshift = $true) & (pushprop_lem2v2_lthm = $true) & (! [X533 : term,X534 : (term > $o)] : (~ ! [X535 : term] : (~ ($true = ((X534 @ X535))) | (((X534 @ (lam @ X535))) = $true)) | ~ ! [X536 : term,X537 : term] : (~ ($true = ((X534 @ X537))) | ~ ($true = ((X534 @ X536))) | ($true = ((X534 @ (ap @ X536 @ X537))))) | ~ ! [X538 : term] : ((((X534 @ X538)) = $true) | ~ ($true = ((var @ X538)))) | (((X534 @ X533)) = $true)) <=> (induction = $true)) & (pushprop_lem2v2 = $true) & ((hoaslaminj = $true) <=> ! [X539 : subst,X540 : (subst > term > term),X541 : (subst > term > term),X542 : term] : (~ ! [X543 : subst,X544 : term,X545 : subst] : (((X541 @ (comp @ X545 @ X543) @ (sub @ X544 @ X543))) = ((sub @ (X541 @ X545 @ X544) @ X543))) | ~ ! [X546 : term,X547 : subst,X548 : subst] : (((X540 @ (comp @ X547 @ X548) @ (sub @ X546 @ X548))) = ((sub @ (X540 @ X547 @ X546) @ X548))) | (((X541 @ X539 @ X542)) = ((X540 @ X539 @ X542))) | (((lam @ (X540 @ sh @ one))) != ((lam @ (X541 @ sh @ one)))))) & (((d2subst @ d_id)) = id) & (((d2subst @ d_id)) = ((push @ (d2term @ d_one) @ (d2subst @ d_id)))) & (! [X549 : term] : (((sub @ X549 @ id)) = X549) <=> (termmset = $true)) & (substmonoid_gthm = $true)),
  inference(fool_elimination,[],[f6])).
thf(f8,plain,(
  (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y1 @ Y2) = (Y0 @ id @ Y2 @ id)))))))) & (pushprop_lem3v2_lthm = $true) & (! [X0 : term,X1 : (subst > term > subst > $o)] : (~ ! [X2 : (subst > term > term)] : (~ ! [X3 : subst,X5 : term,X4 : subst] : (((sub @ (X2 @ X3 @ X5) @ X4)) = ((X2 @ (comp @ X3 @ X4) @ (sub @ X5 @ X4)))) | ~ ! [X6 : term] : (~ (((X1 @ id @ X6 @ id)) = $true) | (((X1 @ id @ (X2 @ id @ X6) @ id)) = $true)) | (((X1 @ id @ (lam @ (X2 @ sh @ one)) @ id)) = $true)) | ($true = ((X1 @ id @ (lam @ (sub @ X0 @ (push @ one @ sh))) @ id))) | ~ ! [X7 : term] : (~ ($true = ((X1 @ id @ X7 @ id))) | (((X1 @ id @ (sub @ X0 @ (push @ X7 @ id)) @ id)) = $true))) <=> (hoasinduction_lem3aa = $true)) & ((axidr = $true) <=> ! [X8 : subst] : (((comp @ X8 @ id)) = X8)) & ((axidl = $true) <=> ! [X9 : subst] : (((comp @ id @ X9)) = X9)) & ((induction2 = $true) <=> ! [X10 : (term > $o),X11 : term] : (($true = ((X10 @ X11))) | ~ ! [X12 : term] : (($true = ((X10 @ X12))) | ~ (((var @ X12)) = $true)) | ~ ! [X13 : term,X14 : term] : (($true = ((X10 @ (ap @ X14 @ X13)))) | ~ (((X10 @ X14)) = $true) | ~ (((X10 @ X13)) = $true)) | ~ ! [X15 : term] : (~ ! [X16 : term] : (~ (((X10 @ X16)) = $true) | ($true = ((X10 @ (sub @ X15 @ (push @ X16 @ id)))))) | (((X10 @ (lam @ X15))) = $true)))) & (hoasinduction_lem1v2_gthm = $true) & (! [X17 : term,X18 : (subst > term > subst > $o)] : (~ ! [X19 : term,X20 : term] : (~ ($true = ((X18 @ id @ X20 @ id))) | (((X18 @ id @ (ap @ (sub @ X19 @ id) @ X20) @ id)) = $true) | ~ (((X18 @ id @ X19 @ id)) = $true)) | ~ ! [X21 : term] : (~ ($true = ((var @ (sub @ X21 @ id)))) | (((X18 @ id @ X21 @ id)) = $true)) | ~ ! [X22 : subst,X23 : subst,X24 : subst,X25 : term] : ((((X18 @ (comp @ X22 @ X24) @ (sub @ X25 @ X24) @ X23)) = $true) | ~ ($true = ((X18 @ X22 @ X25 @ (comp @ X24 @ X23))))) | ($true = ((X18 @ id @ X17 @ id))) | ~ ! [X26 : (subst > term > term)] : (~ ! [X28 : subst,X29 : term,X27 : subst] : (((X26 @ (comp @ X27 @ X28) @ (sub @ X29 @ X28))) = ((sub @ (X26 @ X27 @ X29) @ X28))) | ($true = ((X18 @ id @ (lam @ (X26 @ sh @ one)) @ id))) | ~ ! [X30 : term] : (~ ($true = ((X18 @ id @ X30 @ id))) | (((X18 @ id @ (X26 @ id @ X30) @ id)) = $true))) | ~ ! [X31 : subst,X32 : term,X33 : subst,X34 : subst] : (~ ($true = ((X18 @ (comp @ X31 @ X33) @ (sub @ X32 @ X33) @ X34))) | ($true = ((X18 @ X31 @ X32 @ (comp @ X33 @ X34)))))) <=> (hoasinduction = $true)) & (pushprop_lem3v2 = $true) & ! [X35 : d_subst] : (d_id = X35) & ((induction2_lthm = $true) <=> (! [X36 : term] : (((sub @ X36 @ id)) = X36) => (! [X37 : subst,X38 : (term > $o),X39 : term] : (~ ! [X40 : term] : (($true = ((X38 @ (lam @ X40)))) | ~ ! [X41 : term] : (($true = ((X38 @ (sub @ X40 @ (push @ X41 @ id))))) | ~ ($true = ((X38 @ X41))))) | ~ ! [X42 : term,X43 : term] : (~ (((X38 @ X43)) = $true) | ($true = ((X38 @ (ap @ X42 @ X43)))) | ~ (((X38 @ X42)) = $true)) | ~ ! [X44 : term] : (($true = ((X38 @ (sub @ X44 @ X37)))) | ~ ($true = ((var @ X44)))) | ($true = ((X38 @ (sub @ X39 @ X37))))) => ! [X45 : term,X46 : (term > $o)] : (($true = ((X46 @ X45))) | ~ ! [X47 : term] : ((((X46 @ X47)) = $true) | ~ ($true = ((var @ X47)))) | ~ ! [X48 : term,X49 : term] : (($true = ((X46 @ (ap @ X49 @ X48)))) | ~ ($true = ((X46 @ X49))) | ~ ($true = ((X46 @ X48)))) | ~ ! [X50 : term] : ((((X46 @ (lam @ X50))) = $true) | ~ ! [X51 : term] : (~ ($true = ((X46 @ X51))) | ($true = ((X46 @ (sub @ X50 @ (push @ X51 @ id))))))))))) & (! [X52 : (term > $o),X53 : subst,X54 : term] : (~ ! [X55 : term] : (~ ($true = ((var @ X55))) | (((X52 @ (sub @ X55 @ X53))) = $true)) | ~ ! [X56 : term,X57 : term] : (($true = ((X52 @ (ap @ X56 @ X57)))) | ~ (((X52 @ X56)) = $true) | ~ ($true = ((X52 @ X57)))) | ($true = ((X52 @ (sub @ X54 @ X53)))) | ~ ! [X58 : term] : (~ ! [X59 : term] : (~ ($true = ((X52 @ X59))) | ($true = ((X52 @ (sub @ X58 @ (push @ X59 @ id)))))) | (((X52 @ (lam @ X58))) = $true))) <=> (induction2lem = $true)) & (ulamvarind = $true) & ((hoasinduction_lem3 = $true) <=> ! [X60 : (subst > term > subst > $o),X61 : term] : (($true = ((X60 @ id @ (lam @ X61) @ id))) | ~ ! [X62 : (subst > term > term)] : ((((X60 @ id @ (lam @ (X62 @ sh @ one)) @ id)) = $true) | ~ ! [X65 : subst,X64 : subst,X63 : term] : (((sub @ (X62 @ X64 @ X63) @ X65)) = ((X62 @ (comp @ X64 @ X65) @ (sub @ X63 @ X65)))) | ~ ! [X66 : term] : (~ ($true = ((X60 @ id @ X66 @ id))) | ($true = ((X60 @ id @ (X62 @ id @ X66) @ id))))) | ~ ! [X67 : term,X68 : subst,X69 : subst,X70 : subst] : (~ (((X60 @ (comp @ X68 @ X69) @ (sub @ X67 @ X69) @ X70)) = $true) | ($true = ((X60 @ X68 @ X67 @ (comp @ X69 @ X70))))) | ~ ! [X71 : subst,X72 : term,X73 : subst,X74 : subst] : (($true = ((X60 @ (comp @ X73 @ X74) @ (sub @ X72 @ X74) @ X71))) | ~ (((X60 @ X73 @ X72 @ (comp @ X74 @ X71))) = $true)) | ~ ! [X75 : term] : (~ (((X60 @ id @ X75 @ id)) = $true) | (((X60 @ id @ (sub @ X61 @ (push @ X75 @ id)) @ id)) = $true)))) & (pushprop_lthm = $true) & (hoasapnotvar = $true) & (hoaslamnotap_lthm = $true) & (hoasinduction_lem3a_gthm = $true) & (((d2subst @ d_id)) = sh) & ((substmonoid = $true) <=> (! [X77 : subst] : (((comp @ X77 @ id)) = X77) & ! [X76 : subst] : (((comp @ id @ X76)) = X76))) & (hoasinduction_lem1v2 = $true) & ((hoasinduction_lem3v2a = $true) <=> ! [X78 : (term > $o),X79 : term,X80 : (subst > term > subst > $o)] : (~ ! [X81 : term] : (((X78 @ X81)) = ((X80 @ id @ X81 @ id))) | ~ ! [X82 : (subst > term > term)] : (($true = ((X80 @ id @ (lam @ (X82 @ sh @ one)) @ id))) | ~ ! [X83 : term] : (~ (((X80 @ id @ X83 @ id)) = $true) | (((X80 @ id @ (X82 @ id @ X83) @ id)) = $true)) | ~ ! [X86 : subst,X84 : subst,X85 : term] : (((sub @ (X82 @ X84 @ X85) @ X86)) = ((X82 @ (comp @ X84 @ X86) @ (sub @ X85 @ X86))))) | ($true = ((X78 @ (lam @ X79)))) | ~ ! [X87 : term] : ((((X78 @ (sub @ X79 @ (push @ X87 @ id)))) = $true) | ~ ($true = ((X78 @ X87)))))) & (pushprop_gthm = $true) & (((d2term @ d_one)) = ((ap @ (d2term @ d_one) @ (d2term @ d_one)))) & ((! [X88 : term] : (((sub @ X88 @ id)) = X88) => ! [X89 : term,X90 : (term > $o),X91 : (subst > term > subst > $o)] : ((((X90 @ (lam @ X89))) = $true) | ~ ! [X92 : (subst > term > term)] : (~ ! [X95 : subst,X94 : term,X93 : subst] : (((sub @ (X92 @ X95 @ X94) @ X93)) = ((X92 @ (comp @ X95 @ X93) @ (sub @ X94 @ X93)))) | ~ ! [X96 : term] : (~ (((X91 @ id @ X96 @ id)) = $true) | ($true = ((X91 @ id @ (X92 @ id @ X96) @ id)))) | (((X91 @ id @ (lam @ (X92 @ sh @ one)) @ id)) = $true)) | ~ ! [X97 : term] : (((X91 @ id @ X97 @ id)) = ((X90 @ X97))) | ~ ! [X98 : term] : (($true = ((X90 @ (sub @ X89 @ (push @ X98 @ id))))) | ~ ($true = ((X90 @ X98)))) | ~ ! [X99 : subst,X100 : subst,X101 : subst,X102 : term] : (~ ($true = ((X91 @ X99 @ X102 @ (comp @ X101 @ X100)))) | ($true = ((X91 @ (comp @ X99 @ X101) @ (sub @ X102 @ X101) @ X100)))) | ~ ! [X103 : subst,X104 : term,X105 : subst,X106 : subst] : (($true = ((X91 @ X106 @ X104 @ (comp @ X103 @ X105)))) | ~ ($true = ((X91 @ (comp @ X106 @ X103) @ (sub @ X104 @ X103) @ X105)))))) <=> (hoasinduction_lem3v2_lthm = $true)) & ((pushprop_lem1_lthm = $true) <=> (! [X108 : subst,X107 : term] : (((sub @ one @ (push @ X107 @ X108))) = X107) => (! [X109 : subst,X110 : term] : (((comp @ sh @ (push @ X110 @ X109))) = X109) => ! [X111 : term,X112 : (term > $o),X113 : (term > $o),X114 : term,X115 : subst] : (~ ($true = ((X112 @ X111))) | (((X113 @ (sub @ X111 @ (push @ X114 @ X115)))) = $true))))) & ((hoasinduction_lem3v2 = $true) <=> ! [X116 : (subst > term > subst > $o),X117 : (term > $o),X118 : term] : (~ ! [X119 : (subst > term > term)] : (($true = ((X116 @ id @ (lam @ (X119 @ sh @ one)) @ id))) | ~ ! [X122 : term,X120 : subst,X121 : subst] : (((X119 @ (comp @ X121 @ X120) @ (sub @ X122 @ X120))) = ((sub @ (X119 @ X121 @ X122) @ X120))) | ~ ! [X123 : term] : (~ (((X116 @ id @ X123 @ id)) = $true) | ($true = ((X116 @ id @ (X119 @ id @ X123) @ id))))) | ~ ! [X124 : term] : ((((X117 @ (sub @ X118 @ (push @ X124 @ id)))) = $true) | ~ ($true = ((X117 @ X124)))) | ~ ! [X125 : subst,X126 : subst,X127 : term,X128 : subst] : (($true = ((X116 @ X125 @ X127 @ (comp @ X128 @ X126)))) | ~ (((X116 @ (comp @ X125 @ X128) @ (sub @ X127 @ X128) @ X126)) = $true)) | ~ ! [X129 : subst,X130 : subst,X131 : subst,X132 : term] : (~ (((X116 @ X129 @ X132 @ (comp @ X130 @ X131))) = $true) | (((X116 @ (comp @ X129 @ X130) @ (sub @ X132 @ X130) @ X131)) = $true)) | ~ ! [X133 : term] : (((X116 @ id @ X133 @ id)) = ((X117 @ X133))) | ($true = ((X117 @ (lam @ X118)))))) & ~ (((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id))) = $true) & (! [X134 : term,X135 : term,X136 : (subst > term > subst > $o),X137 : (term > $o)] : (~ (((X137 @ X135)) = $true) | ~ ! [X138 : term,X139 : subst,X140 : subst,X141 : subst] : (~ (((X136 @ X140 @ X138 @ (comp @ X141 @ X139))) = $true) | ($true = ((X136 @ (comp @ X140 @ X141) @ (sub @ X138 @ X141) @ X139)))) | ~ ! [X142 : subst,X143 : term,X144 : subst,X145 : subst] : (($true = ((X136 @ X142 @ X143 @ (comp @ X145 @ X144)))) | ~ ($true = ((X136 @ (comp @ X142 @ X145) @ (sub @ X143 @ X145) @ X144)))) | ~ ! [X146 : term] : (((X136 @ id @ X146 @ id)) = ((X137 @ X146))) | (((X137 @ (ap @ X135 @ X134))) = $true) | ~ ! [X147 : term,X148 : term] : (~ ($true = ((X136 @ id @ X147 @ id))) | ~ ($true = ((X136 @ id @ X148 @ id))) | ($true = ((X136 @ id @ (ap @ (sub @ X148 @ id) @ X147) @ id)))) | ~ ($true = ((X137 @ X134)))) <=> (hoasinduction_lem2v2 = $true)) & (hoaslamnotap_gthm = $true) & ! [X149 : d_term] : (d_one = X149) & ((! [X150 : (subst > term > subst > $o)] : ~ ! [X151 : (term > $o)] : ~ ! [X152 : term] : (((X150 @ id @ X152 @ id)) = ((X151 @ X152))) => (! [X153 : (term > $o),X154 : term] : (~ ! [X155 : term,X156 : term] : (($true = ((X153 @ (ap @ X156 @ X155)))) | ~ ($true = ((X153 @ X156))) | ~ (((X153 @ X155)) = $true)) | ~ ! [X157 : term] : (~ ! [X158 : term] : (~ ($true = ((X153 @ X158))) | (((X153 @ (sub @ X157 @ (push @ X158 @ id)))) = $true)) | (((X153 @ (lam @ X157))) = $true)) | ($true = ((X153 @ X154))) | ~ ! [X159 : term] : (($true = ((X153 @ X159))) | ~ ($true = ((var @ X159))))) => (! [X160 : term] : (((sub @ X160 @ id)) = X160) => (! [X161 : (term > $o),X162 : term,X163 : (subst > term > subst > $o)] : (~ ! [X164 : (subst > term > term)] : (~ ! [X165 : term,X166 : subst,X167 : subst] : (((sub @ (X164 @ X166 @ X165) @ X167)) = ((X164 @ (comp @ X166 @ X167) @ (sub @ X165 @ X167)))) | ($true = ((X163 @ id @ (lam @ (X164 @ sh @ one)) @ id))) | ~ ! [X168 : term] : (~ (((X163 @ id @ X168 @ id)) = $true) | (((X163 @ id @ (X164 @ id @ X168) @ id)) = $true))) | ~ ! [X169 : term] : ((((X161 @ (sub @ X162 @ (push @ X169 @ id)))) = $true) | ~ ($true = ((X161 @ X169)))) | ~ ! [X170 : term] : (((X161 @ X170)) = ((X163 @ id @ X170 @ id))) | (((X161 @ (lam @ X162))) = $true)) => ! [X171 : term,X172 : (subst > term > subst > $o)] : (~ ! [X173 : term] : (($true = ((X172 @ id @ X173 @ id))) | ~ ($true = ((var @ (sub @ X173 @ id))))) | ~ ! [X174 : term,X175 : term] : ((((X172 @ id @ (ap @ (sub @ X174 @ id) @ X175) @ id)) = $true) | ~ ($true = ((X172 @ id @ X175 @ id))) | ~ (((X172 @ id @ X174 @ id)) = $true)) | ~ ! [X176 : subst,X177 : subst,X178 : subst,X179 : term] : (($true = ((X172 @ (comp @ X178 @ X176) @ (sub @ X179 @ X176) @ X177))) | ~ ($true = ((X172 @ X178 @ X179 @ (comp @ X176 @ X177))))) | ~ ! [X180 : term,X181 : subst,X182 : subst,X183 : subst] : (($true = ((X172 @ X183 @ X180 @ (comp @ X181 @ X182)))) | ~ (((X172 @ (comp @ X183 @ X181) @ (sub @ X180 @ X181) @ X182)) = $true)) | ($true = ((X172 @ id @ X171 @ id))) | ~ ! [X184 : (subst > term > term)] : (~ ! [X185 : term] : (~ (((X172 @ id @ X185 @ id)) = $true) | (((X172 @ id @ (X184 @ id @ X185) @ id)) = $true)) | ~ ! [X186 : term,X187 : subst,X188 : subst] : (((sub @ (X184 @ X188 @ X186) @ X187)) = ((X184 @ (comp @ X188 @ X187) @ (sub @ X186 @ X187)))) | (((X172 @ id @ (lam @ (X184 @ sh @ one)) @ id)) = $true))))))) <=> (hoasinduction_lthm_3 = $true)) & ((pushprop_lem0_lthm = $true) <=> ! [X189 : subst,X190 : (term > $o),X191 : term] : ~ ! [X192 : (term > $o)] : ~ ! [X193 : term] : (((X190 @ (sub @ X193 @ (push @ X191 @ X189)))) = ((X192 @ X193)))) & (hoasinduction_lem3b_gthm = $true) & ((termmset_lthm = $true) <=> (! [X194 : term] : (((sub @ X194 @ id)) = X194) => ! [X195 : term] : (((sub @ X195 @ id)) = X195))) & (hoasapnotvar_lthm = $true) & ((! [X196 : term,X197 : (term > $o)] : (($true = ((X197 @ X196))) | ~ ! [X198 : term] : (~ (((var @ X198)) = $true) | ($true = ((X197 @ X198)))) | ~ ! [X199 : term,X200 : term] : (~ ($true = ((X197 @ X199))) | ~ (((X197 @ X200)) = $true) | ($true = ((X197 @ (ap @ X200 @ X199))))) | ~ ! [X201 : term] : (~ ! [X202 : term] : (($true = ((X197 @ (sub @ X201 @ (push @ X202 @ id))))) | ~ ($true = ((X197 @ X202)))) | (((X197 @ (lam @ X201))) = $true))) => (! [X203 : term,X204 : term,X205 : (subst > term > subst > $o)] : (($true = ((X205 @ id @ (ap @ X204 @ X203) @ id))) | ~ (((X205 @ id @ X203 @ id)) = $true) | ~ ! [X206 : subst,X207 : subst,X208 : term,X209 : subst] : ((((X205 @ (comp @ X207 @ X209) @ (sub @ X208 @ X209) @ X206)) = $true) | ~ (((X205 @ X207 @ X208 @ (comp @ X209 @ X206))) = $true)) | ~ ! [X210 : term,X211 : term] : (~ ($true = ((X205 @ id @ X210 @ id))) | ~ (((X205 @ id @ X211 @ id)) = $true) | ($true = ((X205 @ id @ (ap @ (sub @ X210 @ id) @ X211) @ id)))) | ~ (((X205 @ id @ X204 @ id)) = $true) | ~ ! [X212 : subst,X213 : subst,X214 : subst,X215 : term] : (($true = ((X205 @ X213 @ X215 @ (comp @ X214 @ X212)))) | ~ ($true = ((X205 @ (comp @ X213 @ X214) @ (sub @ X215 @ X214) @ X212))))) => (! [X216 : term,X217 : (subst > term > subst > $o)] : (~ ! [X218 : term] : ((((X217 @ id @ (sub @ X216 @ (push @ X218 @ id)) @ id)) = $true) | ~ ($true = ((X217 @ id @ X218 @ id)))) | ($true = ((X217 @ id @ (lam @ X216) @ id))) | ~ ! [X219 : term,X220 : subst,X221 : subst,X222 : subst] : ((((X217 @ X220 @ X219 @ (comp @ X222 @ X221))) = $true) | ~ ($true = ((X217 @ (comp @ X220 @ X222) @ (sub @ X219 @ X222) @ X221)))) | ~ ! [X223 : term,X224 : subst,X225 : subst,X226 : subst] : (($true = ((X217 @ (comp @ X226 @ X224) @ (sub @ X223 @ X224) @ X225))) | ~ ($true = ((X217 @ X226 @ X223 @ (comp @ X224 @ X225))))) | ~ ! [X227 : (subst > term > term)] : (~ ! [X229 : subst,X230 : subst,X228 : term] : (((sub @ (X227 @ X230 @ X228) @ X229)) = ((X227 @ (comp @ X230 @ X229) @ (sub @ X228 @ X229)))) | ~ ! [X231 : term] : (~ (((X217 @ id @ X231 @ id)) = $true) | ($true = ((X217 @ id @ (X227 @ id @ X231) @ id)))) | (((X217 @ id @ (lam @ (X227 @ sh @ one)) @ id)) = $true))) => ! [X232 : (subst > term > subst > $o),X233 : term] : (~ ! [X234 : term,X235 : subst,X236 : subst,X237 : subst] : (~ (((X232 @ (comp @ X236 @ X237) @ (sub @ X234 @ X237) @ X235)) = $true) | ($true = ((X232 @ X236 @ X234 @ (comp @ X237 @ X235))))) | ~ ! [X238 : term,X239 : term] : (~ (((X232 @ id @ X238 @ id)) = $true) | ($true = ((X232 @ id @ (ap @ (sub @ X239 @ id) @ X238) @ id))) | ~ (((X232 @ id @ X239 @ id)) = $true)) | ~ ! [X240 : subst,X241 : subst,X242 : subst,X243 : term] : (($true = ((X232 @ (comp @ X241 @ X242) @ (sub @ X243 @ X242) @ X240))) | ~ (((X232 @ X241 @ X243 @ (comp @ X242 @ X240))) = $true)) | ~ ! [X244 : term] : (~ ($true = ((var @ (sub @ X244 @ id)))) | ($true = ((X232 @ id @ X244 @ id)))) | ~ ! [X245 : (subst > term > term)] : (~ ! [X248 : term,X247 : subst,X246 : subst] : (((sub @ (X245 @ X246 @ X248) @ X247)) = ((X245 @ (comp @ X246 @ X247) @ (sub @ X248 @ X247)))) | ~ ! [X249 : term] : (~ (((X232 @ id @ X249 @ id)) = $true) | ($true = ((X232 @ id @ (X245 @ id @ X249) @ id)))) | (((X232 @ id @ (lam @ (X245 @ sh @ one)) @ id)) = $true)) | ($true = ((X232 @ id @ X233 @ id))))))) <=> (hoasinduction_lthm = $true)) & (hoasapinj2_gthm = $true) & ~ (((var @ (d2term @ d_one))) = $true) & (hoasapnotvar_gthm = $true) & (hoasapinj1_gthm = $true) & ((hoasinduction_lem2 = $true) <=> ! [X250 : (subst > term > subst > $o),X251 : term,X252 : term] : (~ ! [X253 : term,X254 : term] : (~ (((X250 @ id @ X254 @ id)) = $true) | (((X250 @ id @ (ap @ (sub @ X254 @ id) @ X253) @ id)) = $true) | ~ ($true = ((X250 @ id @ X253 @ id)))) | ~ (((X250 @ id @ X251 @ id)) = $true) | ~ ! [X255 : term,X256 : subst,X257 : subst,X258 : subst] : (~ ($true = ((X250 @ X258 @ X255 @ (comp @ X257 @ X256)))) | ($true = ((X250 @ (comp @ X258 @ X257) @ (sub @ X255 @ X257) @ X256)))) | ~ ! [X259 : term,X260 : subst,X261 : subst,X262 : subst] : (~ ($true = ((X250 @ (comp @ X261 @ X262) @ (sub @ X259 @ X262) @ X260))) | ($true = ((X250 @ X261 @ X259 @ (comp @ X262 @ X260))))) | ~ ($true = ((X250 @ id @ X252 @ id))) | ($true = ((X250 @ id @ (ap @ X251 @ X252) @ id))))) & (induction2_gthm = $true) & ((! [X264 : term,X263 : subst] : (((sub @ one @ (push @ X264 @ X263))) = X264) => (! [X266 : subst,X265 : term] : (((comp @ sh @ (push @ X265 @ X266))) = X266) => (! [X267 : subst] : (((comp @ X267 @ id)) = X267) => (! [X268 : (term > $o),X269 : term] : (~ ! [X270 : term] : (~ (((var @ X270)) = $true) | (((X268 @ X270)) = $true)) | (((X268 @ X269)) = $true) | ~ ! [X271 : term] : (($true = ((X268 @ (lam @ X271)))) | ~ ($true = ((X268 @ X271)))) | ~ ! [X272 : term,X273 : term] : (~ ($true = ((X268 @ X273))) | ~ ($true = ((X268 @ X272))) | ($true = ((X268 @ (ap @ X272 @ X273)))))) => ! [X274 : (term > $o),X275 : subst,X276 : term] : (~ ! [X277 : term] : ((((X274 @ (lam @ X277))) = $true) | ~ ! [X278 : term] : (~ ($true = ((X274 @ X278))) | (((X274 @ (sub @ X277 @ (push @ X278 @ id)))) = $true))) | ($true = ((X274 @ (sub @ X276 @ X275)))) | ~ ! [X279 : term,X280 : term] : (~ (((X274 @ X279)) = $true) | (((X274 @ (ap @ X280 @ X279))) = $true) | ~ ($true = ((X274 @ X280)))) | ~ ! [X281 : term] : (~ (((var @ X281)) = $true) | ($true = ((X274 @ (sub @ X281 @ X275)))))))))) <=> (induction2lem_lthm = $true)) & ((pushprop_lem1v2 = $true) <=> ! [X282 : (term > $o),X283 : (term > $o),X284 : subst,X285 : term] : (~ ! [X286 : term] : (((X282 @ X286)) = ((X283 @ (sub @ X286 @ (push @ X285 @ X284))))) | ($true = ((X282 @ one))) | ~ (((X283 @ X285)) = $true))) & ((hoasinduction_lem3a = $true) <=> ! [X287 : (subst > term > subst > $o),X288 : term] : (~ ! [X289 : (subst > term > term)] : ((((X287 @ id @ (lam @ (X289 @ sh @ one)) @ id)) = $true) | ~ ! [X290 : term] : (~ (((X287 @ id @ X290 @ id)) = $true) | (((X287 @ id @ (X289 @ id @ X290) @ id)) = $true)) | ~ ! [X293 : term,X291 : subst,X292 : subst] : (((sub @ (X289 @ X292 @ X293) @ X291)) = ((X289 @ (comp @ X292 @ X291) @ (sub @ X293 @ X291))))) | (((X287 @ id @ (lam @ X288) @ id)) = $true) | ~ ! [X294 : term] : (($true = ((X287 @ id @ (sub @ X288 @ (push @ X294 @ id)) @ id))) | ~ (((X287 @ id @ X294 @ id)) = $true)))) & ((shinj = $true) <=> ! [X296 : term,X295 : term] : ((((sub @ X295 @ sh)) != ((sub @ X296 @ sh))) | (X295 = X296))) & ((! [X297 : subst,X298 : term] : (((sub @ one @ (push @ X298 @ X297))) = X298) => (! [X300 : subst,X299 : term] : (((comp @ sh @ (push @ X299 @ X300))) = X300) => (! [X301 : term,X302 : term] : ((X301 = X302) | (((lam @ X302)) != ((lam @ X301)))) => ! [X306 : (subst > term > term),X305 : term,X304 : subst,X303 : (subst > term > term)] : (~ ! [X312 : subst,X310 : subst,X311 : term] : (((sub @ (X306 @ X310 @ X311) @ X312)) = ((X306 @ (comp @ X310 @ X312) @ (sub @ X311 @ X312)))) | (((X306 @ X304 @ X305)) = ((X303 @ X304 @ X305))) | ~ ! [X308 : subst,X307 : term,X309 : subst] : (((sub @ (X303 @ X308 @ X307) @ X309)) = ((X303 @ (comp @ X308 @ X309) @ (sub @ X307 @ X309)))) | (((lam @ (X303 @ sh @ one))) != ((lam @ (X306 @ sh @ one)))))))) <=> (hoaslaminj_lthm = $true)) & (pushprop_lthm_orig = $true) & ((! [X316 : term,X315 : term,X313 : term,X314 : term] : ((((ap @ X313 @ X315)) != ((ap @ X314 @ X316))) | (X315 = X316)) => ! [X320 : term,X317 : term,X319 : term,X318 : term] : ((((ap @ (sub @ X320 @ id) @ X318)) != ((ap @ (sub @ X317 @ id) @ X319))) | (X318 = X319))) <=> (hoasapinj2_lthm = $true)) & ((hoasinduction_no_psi_cond = $true) <=> ! [X321 : term,X322 : (subst > term > subst > $o)] : (~ ! [X323 : term,X324 : term] : (($true = ((X322 @ id @ (ap @ (sub @ X323 @ id) @ X324) @ id))) | ~ (((X322 @ id @ X324 @ id)) = $true) | ~ ($true = ((X322 @ id @ X323 @ id)))) | ~ ! [X325 : (subst > term > term)] : (~ ! [X326 : term] : (~ (((X322 @ id @ X326 @ id)) = $true) | (((X322 @ id @ (X325 @ id @ X326) @ id)) = $true)) | ~ ! [X329 : subst,X327 : subst,X328 : term] : (((sub @ (X325 @ X329 @ X328) @ X327)) = ((X325 @ (comp @ X329 @ X327) @ (sub @ X328 @ X327)))) | (((X322 @ id @ (lam @ (X325 @ sh @ one)) @ id)) = $true)) | ($true = ((X322 @ id @ X321 @ id))))) & (hoaslamnotvar_gthm = $true) & ((hoasinduction_lem3aa_lthm = $true) <=> ! [X330 : term,X331 : (subst > term > subst > $o)] : (~ ! [X332 : (subst > term > term)] : (($true = ((X331 @ id @ (lam @ (X332 @ sh @ one)) @ id))) | ~ ! [X333 : term] : (~ ($true = ((X331 @ id @ X333 @ id))) | ($true = ((X331 @ id @ (X332 @ id @ X333) @ id)))) | ~ ! [X336 : term,X334 : subst,X335 : subst] : (((X332 @ (comp @ X334 @ X335) @ (sub @ X336 @ X335))) = ((sub @ (X332 @ X334 @ X336) @ X335)))) | (((X331 @ id @ (lam @ (sub @ X330 @ (push @ one @ sh))) @ id)) = $true) | ~ ! [X337 : term] : (~ ($true = ((X331 @ id @ X337 @ id))) | ($true = ((X331 @ id @ (sub @ X330 @ (push @ X337 @ id)) @ id)))))) & (axmap = $true) & (hoasinduction_lem2_lthm = $true) & (! [X338 : term] : ~ ! [X339 : (subst > term > term)] : (((X339 @ sh @ one)) != ((sub @ X338 @ (push @ one @ sh)))) <=> (hoasinduction_lem3b = $true)) & (induction2lem_gthm = $true) & (! [X342 : term,X340 : term,X343 : term,X341 : term] : ((X341 = X342) | (((ap @ X342 @ X340)) != ((ap @ X341 @ X343)))) <=> (apinj1 = $true)) & (axapp = $true) & ~ (lamnotap = $true) & ((! [X344 : term] : (((sub @ X344 @ id)) = X344) => (! [X345 : term,X346 : (subst > term > subst > $o)] : ((((X346 @ id @ (lam @ (sub @ X345 @ (push @ one @ sh))) @ id)) = $true) | ~ ! [X347 : term] : (~ ($true = ((X346 @ id @ X347 @ id))) | ($true = ((X346 @ id @ (sub @ X345 @ (push @ X347 @ id)) @ id)))) | ~ ! [X348 : (subst > term > term)] : (~ ! [X349 : term] : (($true = ((X346 @ id @ (X348 @ id @ X349) @ id))) | ~ ($true = ((X346 @ id @ X349 @ id)))) | ~ ! [X351 : subst,X350 : term,X352 : subst] : (((sub @ (X348 @ X352 @ X350) @ X351)) = ((X348 @ (comp @ X352 @ X351) @ (sub @ X350 @ X351)))) | ($true = ((X346 @ id @ (lam @ (X348 @ sh @ one)) @ id))))) => ! [X353 : (subst > term > subst > $o),X354 : term] : (~ ! [X355 : term] : (~ ($true = ((X353 @ id @ X355 @ id))) | ($true = ((X353 @ id @ (sub @ X354 @ (push @ X355 @ id)) @ id)))) | ~ ! [X356 : (subst > term > term)] : (~ ! [X357 : term] : (~ ($true = ((X353 @ id @ X357 @ id))) | ($true = ((X353 @ id @ (X356 @ id @ X357) @ id)))) | (((X353 @ id @ (lam @ (X356 @ sh @ one)) @ id)) = $true) | ~ ! [X359 : subst,X358 : subst,X360 : term] : (((sub @ (X356 @ X358 @ X360) @ X359)) = ((X356 @ (comp @ X358 @ X359) @ (sub @ X360 @ X359))))) | ~ ! [X361 : term,X362 : subst,X363 : subst,X364 : subst] : (~ (((X353 @ (comp @ X363 @ X364) @ (sub @ X361 @ X364) @ X362)) = $true) | ($true = ((X353 @ X363 @ X361 @ (comp @ X364 @ X362))))) | ~ ! [X365 : subst,X366 : subst,X367 : term,X368 : subst] : (~ ($true = ((X353 @ X366 @ X367 @ (comp @ X365 @ X368)))) | (((X353 @ (comp @ X366 @ X365) @ (sub @ X367 @ X365) @ X368)) = $true)) | (((X353 @ id @ (lam @ X354) @ id)) = $true)))) <=> (hoasinduction_lem3_lthm = $true)) & (hoasinduction_lem3v2_gthm = $true) & ((hoasinduction_lem3v2_f_lthm = $true) <=> ! [X369 : term] : ~ ! [X370 : (subst > term > term)] : ~ ! [X371 : subst,X372 : term] : (((X370 @ X371 @ X372)) = ((sub @ X369 @ (push @ X372 @ X371))))) & (pushprop = $true) & (! [X373 : term] : ~ ! [X374 : (subst > term > term)] : (((sub @ X373 @ (push @ one @ sh))) != ((X374 @ sh @ one))) <=> (hoasinduction_lem3b_lthm = $true)) & ((axscons = $true) <=> ! [X375 : subst] : (((push @ (sub @ one @ X375) @ (comp @ sh @ X375))) = X375)) & (((d2term @ d_one)) = one) & (((d2term @ d_one)) = ((sub @ (d2term @ d_one) @ (d2subst @ d_id)))) & (hoasinduction_gthm = $true) & ((hoasapinj2 = $true) <=> ! [X378 : term,X377 : term,X376 : term,X379 : term] : ((X377 = X379) | (((ap @ (sub @ X378 @ id) @ X379)) != ((ap @ (sub @ X376 @ id) @ X377))))) & ((! [X380 : term] : ~ ! [X381 : (subst > term > term)] : ~ ! [X383 : term,X382 : subst] : (((sub @ X380 @ (push @ X383 @ X382))) = ((X381 @ X382 @ X383))) => (! [X384 : term] : (((sub @ X384 @ id)) = X384) => ! [X385 : (subst > term > subst > $o),X386 : term,X387 : (term > $o)] : (($true = ((X387 @ (lam @ X386)))) | ~ ! [X388 : term] : (~ (((X387 @ X388)) = $true) | (((X387 @ (sub @ X386 @ (push @ X388 @ id)))) = $true)) | ~ ! [X389 : term] : (((X387 @ X389)) = ((X385 @ id @ X389 @ id))) | ~ ! [X390 : (subst > term > term)] : (~ ! [X392 : subst,X391 : term,X393 : subst] : (((X390 @ (comp @ X393 @ X392) @ (sub @ X391 @ X392))) = ((sub @ (X390 @ X393 @ X391) @ X392))) | ~ ! [X394 : term] : (($true = ((X385 @ id @ (X390 @ id @ X394) @ id))) | ~ (((X385 @ id @ X394 @ id)) = $true)) | ($true = ((X385 @ id @ (lam @ (X390 @ sh @ one)) @ id))))))) <=> (hoasinduction_lem3v2a_lthm = $true)) & ~ (ulamvar1 = $true) & (hoasinduction_lem1_gthm = $true) & (((d2term @ d_one)) = ((lam @ (d2term @ d_one)))) & (hoaslamnotvar_lthm = $true) & (pushprop_lem1_gthm = $true) & ((axshiftcons = $true) <=> ! [X396 : term,X395 : subst] : (((comp @ sh @ (push @ X396 @ X395))) = X395)) & ! [X398 : d_term,X397 : d_term] : ((((d2term @ X398)) = ((d2term @ X397))) => (X397 = X398)) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & ((! [X400 : subst,X399 : term] : (((sub @ one @ (push @ X399 @ X400))) = X399) => ! [X401 : (term > $o),X402 : subst,X403 : (term > $o),X404 : term] : (($true = ((X403 @ one))) | ~ ! [X405 : term] : (((X403 @ X405)) = ((X401 @ (sub @ X405 @ (push @ X404 @ X402))))) | ~ (((X401 @ X404)) = $true))) <=> (pushprop_lem1v2_lthm = $true)) & (hoasinduction_lem1 = $true) & (hoasinduction_lem1_lthm = $true) & (! [X406 : (term > $o),X407 : subst,X408 : term,X409 : (term > $o),X410 : term] : (~ ($true = ((X409 @ X410))) | (((X406 @ (sub @ X410 @ (push @ X408 @ X407)))) = $true)) <=> (pushprop_lem1 = $true)) & (lamnotvar = $true) & (axabs = $true) & ((hoasinduction_lem3aaa = $true) <=> ! [X411 : term,X412 : (subst > term > subst > $o)] : (~ ! [X413 : term] : ((((X412 @ id @ (sub @ X411 @ (push @ X413 @ id)) @ id)) = $true) | ~ (((X412 @ id @ X413 @ id)) = $true)) | (((X412 @ id @ (lam @ (sub @ X411 @ (push @ one @ sh))) @ id)) = $true) | ~ ! [X414 : term,X415 : (subst > term > term)] : (~ ! [X416 : term] : (~ ($true = ((X412 @ id @ X416 @ id))) | ($true = ((X412 @ id @ (X415 @ id @ X416) @ id)))) | (((X412 @ id @ (lam @ (X415 @ sh @ one)) @ id)) = $true) | ~ ! [X419 : subst,X417 : term,X418 : subst] : (((sub @ (X415 @ X419 @ X417) @ X418)) = ((sub @ (sub @ X414 @ (push @ X417 @ X419)) @ X418))) | ~ ! [X422 : subst,X420 : term,X421 : subst] : (((sub @ X414 @ (push @ (sub @ X420 @ X421) @ (comp @ X422 @ X421)))) = ((X415 @ (comp @ X422 @ X421) @ (sub @ X420 @ X421))))))) & ((hoasinduction_lem3a_lthm = $true) <=> (! [X423 : term] : (((sub @ X423 @ id)) = X423) => (! [X424 : term,X425 : (subst > term > subst > $o)] : (($true = ((X425 @ id @ (lam @ (sub @ X424 @ (push @ one @ sh))) @ id))) | ~ ! [X426 : (subst > term > term)] : (($true = ((X425 @ id @ (lam @ (X426 @ sh @ one)) @ id))) | ~ ! [X428 : term,X429 : subst,X427 : subst] : (((X426 @ (comp @ X427 @ X429) @ (sub @ X428 @ X429))) = ((sub @ (X426 @ X427 @ X428) @ X429))) | ~ ! [X430 : term] : (~ ($true = ((X425 @ id @ X430 @ id))) | ($true = ((X425 @ id @ (X426 @ id @ X430) @ id))))) | ~ ! [X431 : term] : (~ ($true = ((X425 @ id @ X431 @ id))) | (((X425 @ id @ (sub @ X424 @ (push @ X431 @ id)) @ id)) = $true))) => ! [X432 : term,X433 : (subst > term > subst > $o)] : ((((X433 @ id @ (lam @ X432) @ id)) = $true) | ~ ! [X434 : (subst > term > term)] : (($true = ((X433 @ id @ (lam @ (X434 @ sh @ one)) @ id))) | ~ ! [X437 : subst,X436 : subst,X435 : term] : (((X434 @ (comp @ X436 @ X437) @ (sub @ X435 @ X437))) = ((sub @ (X434 @ X436 @ X435) @ X437))) | ~ ! [X438 : term] : (~ (((X433 @ id @ X438 @ id)) = $true) | ($true = ((X433 @ id @ (X434 @ id @ X438) @ id))))) | ~ ! [X439 : term] : (~ ($true = ((X433 @ id @ X439 @ id))) | (((X433 @ id @ (sub @ X432 @ (push @ X439 @ id)) @ id)) = $true)))))) & (! [X440 : term] : (((sub @ X440 @ id)) = X440) <=> (axvarid = $true)) & ! [X441 : term] : ? [X442 : d_term] : (((d2term @ X442)) = X441) & ((! [X443 : (subst > term > subst > $o)] : ~ ! [X444 : (term > $o)] : ~ ! [X445 : term] : (((X443 @ id @ X445 @ id)) = ((X444 @ X445))) => (! [X446 : (term > $o),X447 : term] : ((((X446 @ X447)) = $true) | ~ ! [X448 : term,X449 : term] : (($true = ((X446 @ (ap @ X449 @ X448)))) | ~ ($true = ((X446 @ X449))) | ~ ($true = ((X446 @ X448)))) | ~ ! [X450 : term] : (~ ! [X451 : term] : (($true = ((X446 @ (sub @ X450 @ (push @ X451 @ id))))) | ~ ($true = ((X446 @ X451)))) | ($true = ((X446 @ (lam @ X450))))) | ~ ! [X452 : term] : (($true = ((X446 @ X452))) | ~ (((var @ X452)) = $true))) => (! [X453 : term] : (((sub @ X453 @ id)) = X453) => (! [X454 : (term > $o),X455 : (subst > term > subst > $o),X456 : term] : (~ ! [X457 : term] : (((X454 @ X457)) = ((X455 @ id @ X457 @ id))) | ($true = ((X454 @ (lam @ X456)))) | ~ ! [X458 : term] : (~ ($true = ((X454 @ X458))) | ($true = ((X454 @ (sub @ X456 @ (push @ X458 @ id)))))) | ~ ! [X459 : (subst > term > term)] : (($true = ((X455 @ id @ (lam @ (X459 @ sh @ one)) @ id))) | ~ ! [X460 : term] : (~ ($true = ((X455 @ id @ X460 @ id))) | ($true = ((X455 @ id @ (X459 @ id @ X460) @ id)))) | ~ ! [X461 : subst,X463 : term,X462 : subst] : (((X459 @ (comp @ X462 @ X461) @ (sub @ X463 @ X461))) = ((sub @ (X459 @ X462 @ X463) @ X461))))) => ! [X464 : term,X465 : (subst > term > subst > $o)] : (($true = ((X465 @ id @ X464 @ id))) | ~ ! [X466 : term,X467 : term] : (~ (((X465 @ id @ X467 @ id)) = $true) | (((X465 @ id @ (ap @ (sub @ X466 @ id) @ X467) @ id)) = $true) | ~ ($true = ((X465 @ id @ X466 @ id)))) | ~ ! [X468 : (subst > term > term)] : (~ ! [X469 : term] : ((((X465 @ id @ (X468 @ id @ X469) @ id)) = $true) | ~ (((X465 @ id @ X469 @ id)) = $true)) | ($true = ((X465 @ id @ (lam @ (X468 @ sh @ one)) @ id))) | ~ ! [X471 : subst,X470 : subst,X472 : term] : (((X468 @ (comp @ X470 @ X471) @ (sub @ X472 @ X471))) = ((sub @ (X468 @ X470 @ X472) @ X471))))))))) <=> (hoasinduction_no_psi_cond_lthm = $true)) & ! [X473 : d_subst,X474 : d_subst] : ((((d2subst @ X474)) = ((d2subst @ X473))) => (X473 = X474)) & ((pushprop_lem0 = $true) <=> ! [X476 : (term > $o),X477 : subst,X475 : term] : ~ ! [X478 : (term > $o)] : ~ ! [X479 : term] : (((X476 @ (sub @ X479 @ (push @ X475 @ X477)))) = ((X478 @ X479)))) & (((d2subst @ d_id)) = ((comp @ (d2subst @ d_id) @ (d2subst @ d_id)))) & (apnotvar = $true) & (hoaslaminj_gthm = $true) & (pushprop_lem1v2_gthm = $true) & (pushprop_lem0_gthm = $true) & (hoasinduction_lem3_gthm = $true) & (! [X481 : term,X482 : (subst > term > term),X480 : term] : (~ ! [X485 : subst,X483 : term,X484 : subst] : (((sub @ (X482 @ X484 @ X483) @ X485)) = ((X482 @ (comp @ X484 @ X485) @ (sub @ X483 @ X485)))) | (((ap @ (sub @ X481 @ id) @ X480)) != ((lam @ (X482 @ sh @ one))))) <=> (hoaslamnotap = $true)) & ((substmonoid_lthm = $true) <=> (! [X486 : subst] : (((comp @ id @ X486)) = X486) => (! [X487 : subst] : (((comp @ X487 @ id)) = X487) => (! [X489 : subst] : (((comp @ X489 @ id)) = X489) & ! [X488 : subst] : (((comp @ id @ X488)) = X488))))) & (! [X491 : term,X490 : term] : ((X490 = X491) | (((lam @ X490)) != ((lam @ X491)))) <=> (laminj = $true)) & (((d2term @ d_one)) = ((hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one)))) & (! [X494 : term,X493 : term,X492 : term,X495 : term] : ((((ap @ X492 @ X494)) != ((ap @ X493 @ X495))) | (X494 = X495)) <=> (apinj2 = $true)) & (termmset_gthm = $true) & (! [X497 : subst,X496 : term] : (((sub @ one @ (push @ X496 @ X497))) = X496) <=> (axvarcons = $true)) & ! [X498 : subst] : ? [X499 : d_subst] : (((d2subst @ X499)) = X498) & (! [X500 : term,X502 : term,X503 : term,X501 : term] : ((X502 = X503) | (((ap @ (sub @ X502 @ id) @ X501)) != ((ap @ (sub @ X503 @ id) @ X500)))) <=> (hoasapinj1 = $true)) & ((hoasinduction_lem0_lthm = $true) <=> ! [X504 : (subst > term > subst > $o)] : ~ ! [X505 : (term > $o)] : ~ ! [X506 : term] : (((X505 @ X506)) = ((X504 @ id @ X506 @ id)))) & ((hoasapinj1_lthm = $true) <=> (! [X507 : term] : (((sub @ X507 @ id)) = X507) => (! [X509 : term,X511 : term,X510 : term,X508 : term] : ((X508 = X511) | (((ap @ X511 @ X509)) != ((ap @ X508 @ X510)))) => ! [X515 : term,X512 : term,X514 : term,X513 : term] : ((((ap @ (sub @ X513 @ id) @ X514)) != ((ap @ (sub @ X515 @ id) @ X512))) | (X513 = X515))))) & (! [X516 : term] : ~ ! [X517 : (subst > term > term)] : ~ ! [X519 : subst,X518 : term] : (((sub @ X516 @ (push @ X518 @ X519))) = ((X517 @ X519 @ X518))) <=> (hoasinduction_lem3v2_f = $true)) & (hoasinduction_lem2v2_gthm = $true) & (axclos = $true) & (hoasinduction_lem2_gthm = $true) & (pushprop_lem2v2_gthm = $true) & (hoaslamnotvar = $true) & (axassoc = $true) & ((hoasinduction_lem0 = $true) <=> ! [X520 : (subst > term > subst > $o)] : ~ ! [X521 : (term > $o)] : ~ ! [X522 : term] : (((X521 @ X522)) = ((X520 @ id @ X522 @ id)))) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & (ulamvarsh = $true) & (axvarshift = $true) & (pushprop_lem2v2_lthm = $true) & (! [X523 : term,X524 : (term > $o)] : (~ ! [X525 : term] : (~ ($true = ((X524 @ X525))) | ($true = ((X524 @ (lam @ X525))))) | ~ ! [X526 : term,X527 : term] : (~ ($true = ((X524 @ X527))) | ~ (((X524 @ X526)) = $true) | ($true = ((X524 @ (ap @ X526 @ X527))))) | ~ ! [X528 : term] : ((((X524 @ X528)) = $true) | ~ (((var @ X528)) = $true)) | (((X524 @ X523)) = $true)) <=> (induction = $true)) & (pushprop_lem2v2 = $true) & ((hoaslaminj = $true) <=> ! [X531 : (subst > term > term),X529 : subst,X532 : term,X530 : (subst > term > term)] : (~ ! [X535 : subst,X533 : subst,X534 : term] : (((X531 @ (comp @ X535 @ X533) @ (sub @ X534 @ X533))) = ((sub @ (X531 @ X535 @ X534) @ X533))) | (((X530 @ X529 @ X532)) = ((X531 @ X529 @ X532))) | (((lam @ (X530 @ sh @ one))) != ((lam @ (X531 @ sh @ one)))) | ~ ! [X537 : subst,X536 : term,X538 : subst] : (((X530 @ (comp @ X537 @ X538) @ (sub @ X536 @ X538))) = ((sub @ (X530 @ X537 @ X536) @ X538))))) & (((d2subst @ d_id)) = id) & (((d2subst @ d_id)) = ((push @ (d2term @ d_one) @ (d2subst @ d_id)))) & (! [X539 : term] : (((sub @ X539 @ id)) = X539) <=> (termmset = $true)) & (substmonoid_gthm = $true)),
  inference(rectify,[],[f7])).
thf(f9,plain,(
  (! [X53 : subst,X54 : term,X52 : (term > $o)] : (($true = ((X52 @ (sub @ X54 @ X53)))) | ~ ! [X58 : term] : ((((X52 @ (lam @ X58))) = $true) | ~ ! [X59 : term] : (($true != ((X52 @ X59))) | ($true = ((X52 @ (sub @ X58 @ (push @ X59 @ id))))))) | ~ ! [X55 : term] : (($true != ((var @ X55))) | (((X52 @ (sub @ X55 @ X53))) = $true)) | ~ ! [X57 : term,X56 : term] : (($true != ((X52 @ X57))) | ($true = ((X52 @ (ap @ X56 @ X57)))) | (((X52 @ X56)) != $true))) <=> (induction2lem = $true)) & (! [X516 : term] : ~ ! [X517 : (subst > term > term)] : ~ ! [X519 : subst,X518 : term] : (((sub @ X516 @ (push @ X518 @ X519))) = ((X517 @ X519 @ X518))) <=> (hoasinduction_lem3v2_f = $true)) & ((hoasinduction_lem3_lthm = $true) <=> (! [X344 : term] : (((sub @ X344 @ id)) = X344) => (! [X345 : term,X346 : (subst > term > subst > $o)] : (~ ! [X347 : term] : (($true != ((X346 @ id @ X347 @ id))) | ($true = ((X346 @ id @ (sub @ X345 @ (push @ X347 @ id)) @ id)))) | (((X346 @ id @ (lam @ (sub @ X345 @ (push @ one @ sh))) @ id)) = $true) | ~ ! [X348 : (subst > term > term)] : (~ ! [X351 : subst,X350 : term,X352 : subst] : (((sub @ (X348 @ X352 @ X350) @ X351)) = ((X348 @ (comp @ X352 @ X351) @ (sub @ X350 @ X351)))) | ~ ! [X349 : term] : (($true = ((X346 @ id @ (X348 @ id @ X349) @ id))) | ($true != ((X346 @ id @ X349 @ id)))) | ($true = ((X346 @ id @ (lam @ (X348 @ sh @ one)) @ id))))) => ! [X353 : (subst > term > subst > $o),X354 : term] : (~ ! [X356 : (subst > term > term)] : (~ ! [X357 : term] : (($true != ((X353 @ id @ X357 @ id))) | ($true = ((X353 @ id @ (X356 @ id @ X357) @ id)))) | ~ ! [X359 : subst,X358 : subst,X360 : term] : (((sub @ (X356 @ X358 @ X360) @ X359)) = ((X356 @ (comp @ X358 @ X359) @ (sub @ X360 @ X359)))) | (((X353 @ id @ (lam @ (X356 @ sh @ one)) @ id)) = $true)) | (((X353 @ id @ (lam @ X354) @ id)) = $true) | ~ ! [X355 : term] : (($true != ((X353 @ id @ X355 @ id))) | ($true = ((X353 @ id @ (sub @ X354 @ (push @ X355 @ id)) @ id)))) | ~ ! [X361 : term,X363 : subst,X362 : subst,X364 : subst] : ((((X353 @ (comp @ X363 @ X364) @ (sub @ X361 @ X364) @ X362)) != $true) | ($true = ((X353 @ X363 @ X361 @ (comp @ X364 @ X362))))) | ~ ! [X366 : subst,X365 : subst,X368 : subst,X367 : term] : ((((X353 @ (comp @ X366 @ X365) @ (sub @ X367 @ X365) @ X368)) = $true) | ($true != ((X353 @ X366 @ X367 @ (comp @ X365 @ X368))))))))) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & ((hoasinduction_lem2v2 = $true) <=> ! [X137 : (term > $o),X134 : term,X135 : term,X136 : (subst > term > subst > $o)] : (~ ! [X141 : subst,X140 : subst,X138 : term,X139 : subst] : ((((X136 @ X140 @ X138 @ (comp @ X141 @ X139))) != $true) | ($true = ((X136 @ (comp @ X140 @ X141) @ (sub @ X138 @ X141) @ X139)))) | ~ ! [X143 : term,X145 : subst,X142 : subst,X144 : subst] : (($true != ((X136 @ (comp @ X142 @ X145) @ (sub @ X143 @ X145) @ X144))) | ($true = ((X136 @ X142 @ X143 @ (comp @ X145 @ X144))))) | ($true != ((X137 @ X134))) | ~ ! [X148 : term,X147 : term] : (($true != ((X136 @ id @ X147 @ id))) | ($true != ((X136 @ id @ X148 @ id))) | ($true = ((X136 @ id @ (ap @ (sub @ X148 @ id) @ X147) @ id)))) | (((X137 @ (ap @ X135 @ X134))) = $true) | ~ ! [X146 : term] : (((X136 @ id @ X146 @ id)) = ((X137 @ X146))) | (((X137 @ X135)) != $true))) & ! [X498 : subst] : ? [X499 : d_subst] : (((d2subst @ X499)) = X498) & ((pushprop_lem1v2 = $true) <=> ! [X285 : term,X283 : (term > $o),X282 : (term > $o),X284 : subst] : ((((X283 @ X285)) != $true) | ~ ! [X286 : term] : (((X282 @ X286)) = ((X283 @ (sub @ X286 @ (push @ X285 @ X284))))) | ($true = ((X282 @ one))))) & (hoasinduction_lem1 = $true) & ((hoasinduction = $true) <=> ! [X17 : term,X18 : (subst > term > subst > $o)] : (($true = ((X18 @ id @ X17 @ id))) | ~ ! [X19 : term,X20 : term] : ((((X18 @ id @ X19 @ id)) != $true) | (((X18 @ id @ (ap @ (sub @ X19 @ id) @ X20) @ id)) = $true) | ($true != ((X18 @ id @ X20 @ id)))) | ~ ! [X34 : subst,X33 : subst,X31 : subst,X32 : term] : (($true = ((X18 @ X31 @ X32 @ (comp @ X33 @ X34)))) | ($true != ((X18 @ (comp @ X31 @ X33) @ (sub @ X32 @ X33) @ X34)))) | ~ ! [X26 : (subst > term > term)] : (($true = ((X18 @ id @ (lam @ (X26 @ sh @ one)) @ id))) | ~ ! [X28 : subst,X29 : term,X27 : subst] : (((X26 @ (comp @ X27 @ X28) @ (sub @ X29 @ X28))) = ((sub @ (X26 @ X27 @ X29) @ X28))) | ~ ! [X30 : term] : ((((X18 @ id @ (X26 @ id @ X30) @ id)) = $true) | ($true != ((X18 @ id @ X30 @ id))))) | ~ ! [X21 : term] : (($true != ((var @ (sub @ X21 @ id)))) | (((X18 @ id @ X21 @ id)) = $true)) | ~ ! [X22 : subst,X23 : subst,X25 : term,X24 : subst] : (($true != ((X18 @ X22 @ X25 @ (comp @ X24 @ X23)))) | (((X18 @ (comp @ X22 @ X24) @ (sub @ X25 @ X24) @ X23)) = $true)))) & (! [X491 : term,X490 : term] : ((X490 = X491) | (((lam @ X490)) != ((lam @ X491)))) <=> (laminj = $true)) & (hoaslaminj_gthm = $true) & (! [X412 : (subst > term > subst > $o),X411 : term] : (~ ! [X413 : term] : ((((X412 @ id @ X413 @ id)) != $true) | (((X412 @ id @ (sub @ X411 @ (push @ X413 @ id)) @ id)) = $true)) | (((X412 @ id @ (lam @ (sub @ X411 @ (push @ one @ sh))) @ id)) = $true) | ~ ! [X414 : term,X415 : (subst > term > term)] : (~ ! [X416 : term] : (($true != ((X412 @ id @ X416 @ id))) | ($true = ((X412 @ id @ (X415 @ id @ X416) @ id)))) | ~ ! [X419 : subst,X417 : term,X418 : subst] : (((sub @ (X415 @ X419 @ X417) @ X418)) = ((sub @ (sub @ X414 @ (push @ X417 @ X419)) @ X418))) | (((X412 @ id @ (lam @ (X415 @ sh @ one)) @ id)) = $true) | ~ ! [X422 : subst,X420 : term,X421 : subst] : (((sub @ X414 @ (push @ (sub @ X420 @ X421) @ (comp @ X422 @ X421)))) = ((X415 @ (comp @ X422 @ X421) @ (sub @ X420 @ X421)))))) <=> (hoasinduction_lem3aaa = $true)) & (hoasinduction_lem2v2_gthm = $true) & ! [X35 : d_subst] : (d_id = X35) & (((d2term @ d_one)) = one) & (! [X322 : (subst > term > subst > $o),X321 : term] : (~ ! [X323 : term,X324 : term] : (($true = ((X322 @ id @ (ap @ (sub @ X323 @ id) @ X324) @ id))) | (((X322 @ id @ X324 @ id)) != $true) | ($true != ((X322 @ id @ X323 @ id)))) | ($true = ((X322 @ id @ X321 @ id))) | ~ ! [X325 : (subst > term > term)] : (~ ! [X329 : subst,X327 : subst,X328 : term] : (((sub @ (X325 @ X329 @ X328) @ X327)) = ((X325 @ (comp @ X329 @ X327) @ (sub @ X328 @ X327)))) | ~ ! [X326 : term] : ((((X322 @ id @ X326 @ id)) != $true) | (((X322 @ id @ (X325 @ id @ X326) @ id)) = $true)) | (((X322 @ id @ (lam @ (X325 @ sh @ one)) @ id)) = $true))) <=> (hoasinduction_no_psi_cond = $true)) & ((shinj = $true) <=> ! [X296 : term,X295 : term] : ((((sub @ X295 @ sh)) != ((sub @ X296 @ sh))) | (X295 = X296))) & (((d2term @ d_one)) = ((hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one)))) & (((var @ (d2term @ d_one))) != $true) & ! [X473 : d_subst,X474 : d_subst] : ((((d2subst @ X474)) = ((d2subst @ X473))) => (X473 = X474)) & (! [X11 : term,X10 : (term > $o)] : (($true = ((X10 @ X11))) | ~ ! [X12 : term] : (($true = ((X10 @ X12))) | (((var @ X12)) != $true)) | ~ ! [X15 : term] : (~ ! [X16 : term] : ((((X10 @ X16)) != $true) | ($true = ((X10 @ (sub @ X15 @ (push @ X16 @ id)))))) | (((X10 @ (lam @ X15))) = $true)) | ~ ! [X13 : term,X14 : term] : (($true = ((X10 @ (ap @ X14 @ X13)))) | (((X10 @ X14)) != $true) | (((X10 @ X13)) != $true))) <=> (induction2 = $true)) & ((pushprop_lem0_lthm = $true) <=> ! [X189 : subst,X190 : (term > $o),X191 : term] : ~ ! [X192 : (term > $o)] : ~ ! [X193 : term] : (((X190 @ (sub @ X193 @ (push @ X191 @ X189)))) = ((X192 @ X193)))) & (hoasinduction_lem1_lthm = $true) & (hoaslamnotvar = $true) & (((d2subst @ d_id)) = ((push @ (d2term @ d_one) @ (d2subst @ d_id)))) & ((termmset_lthm = $true) <=> (! [X194 : term] : (((sub @ X194 @ id)) = X194) => ! [X195 : term] : (((sub @ X195 @ id)) = X195))) & ((! [X196 : term,X197 : (term > $o)] : (~ ! [X198 : term] : (($true = ((X197 @ X198))) | (((var @ X198)) != $true)) | ~ ! [X201 : term] : ((((X197 @ (lam @ X201))) = $true) | ~ ! [X202 : term] : (($true != ((X197 @ X202))) | ($true = ((X197 @ (sub @ X201 @ (push @ X202 @ id))))))) | ~ ! [X200 : term,X199 : term] : (($true = ((X197 @ (ap @ X200 @ X199)))) | ($true != ((X197 @ X199))) | (((X197 @ X200)) != $true)) | ($true = ((X197 @ X196)))) => (! [X205 : (subst > term > subst > $o),X204 : term,X203 : term] : (~ ! [X209 : subst,X207 : subst,X208 : term,X206 : subst] : ((((X205 @ (comp @ X207 @ X209) @ (sub @ X208 @ X209) @ X206)) = $true) | (((X205 @ X207 @ X208 @ (comp @ X209 @ X206))) != $true)) | (((X205 @ id @ X204 @ id)) != $true) | (((X205 @ id @ X203 @ id)) != $true) | ~ ! [X214 : subst,X215 : term,X213 : subst,X212 : subst] : (($true != ((X205 @ (comp @ X213 @ X214) @ (sub @ X215 @ X214) @ X212))) | ($true = ((X205 @ X213 @ X215 @ (comp @ X214 @ X212))))) | ($true = ((X205 @ id @ (ap @ X204 @ X203) @ id))) | ~ ! [X211 : term,X210 : term] : ((((X205 @ id @ X211 @ id)) != $true) | ($true != ((X205 @ id @ X210 @ id))) | ($true = ((X205 @ id @ (ap @ (sub @ X210 @ id) @ X211) @ id))))) => (! [X216 : term,X217 : (subst > term > subst > $o)] : (($true = ((X217 @ id @ (lam @ X216) @ id))) | ~ ! [X220 : subst,X221 : subst,X222 : subst,X219 : term] : (($true != ((X217 @ (comp @ X220 @ X222) @ (sub @ X219 @ X222) @ X221))) | (((X217 @ X220 @ X219 @ (comp @ X222 @ X221))) = $true)) | ~ ! [X218 : term] : (($true != ((X217 @ id @ X218 @ id))) | (((X217 @ id @ (sub @ X216 @ (push @ X218 @ id)) @ id)) = $true)) | ~ ! [X226 : subst,X225 : subst,X223 : term,X224 : subst] : (($true != ((X217 @ X226 @ X223 @ (comp @ X224 @ X225)))) | ($true = ((X217 @ (comp @ X226 @ X224) @ (sub @ X223 @ X224) @ X225)))) | ~ ! [X227 : (subst > term > term)] : (~ ! [X231 : term] : (($true = ((X217 @ id @ (X227 @ id @ X231) @ id))) | (((X217 @ id @ X231 @ id)) != $true)) | ~ ! [X229 : subst,X230 : subst,X228 : term] : (((sub @ (X227 @ X230 @ X228) @ X229)) = ((X227 @ (comp @ X230 @ X229) @ (sub @ X228 @ X229)))) | (((X217 @ id @ (lam @ (X227 @ sh @ one)) @ id)) = $true))) => ! [X232 : (subst > term > subst > $o),X233 : term] : (~ ! [X245 : (subst > term > term)] : (~ ! [X248 : term,X247 : subst,X246 : subst] : (((sub @ (X245 @ X246 @ X248) @ X247)) = ((X245 @ (comp @ X246 @ X247) @ (sub @ X248 @ X247)))) | ~ ! [X249 : term] : (($true = ((X232 @ id @ (X245 @ id @ X249) @ id))) | (((X232 @ id @ X249 @ id)) != $true)) | (((X232 @ id @ (lam @ (X245 @ sh @ one)) @ id)) = $true)) | ~ ! [X240 : subst,X241 : subst,X242 : subst,X243 : term] : (($true = ((X232 @ (comp @ X241 @ X242) @ (sub @ X243 @ X242) @ X240))) | (((X232 @ X241 @ X243 @ (comp @ X242 @ X240))) != $true)) | ~ ! [X235 : subst,X236 : subst,X237 : subst,X234 : term] : ((((X232 @ (comp @ X236 @ X237) @ (sub @ X234 @ X237) @ X235)) != $true) | ($true = ((X232 @ X236 @ X234 @ (comp @ X237 @ X235))))) | ($true = ((X232 @ id @ X233 @ id))) | ~ ! [X239 : term,X238 : term] : (($true = ((X232 @ id @ (ap @ (sub @ X239 @ id) @ X238) @ id))) | (((X232 @ id @ X239 @ id)) != $true) | (((X232 @ id @ X238 @ id)) != $true)) | ~ ! [X244 : term] : (($true = ((X232 @ id @ X244 @ id))) | ($true != ((var @ (sub @ X244 @ id))))))))) <=> (hoasinduction_lthm = $true)) & (pushprop_lem3v2_lthm = $true) & (pushprop_lem2v2_gthm = $true) & (ulamvar1 != $true) & (hoasinduction_lem2_lthm = $true) & (pushprop_lem2v2_lthm = $true) & ((hoasapinj1_lthm = $true) <=> (! [X507 : term] : (((sub @ X507 @ id)) = X507) => (! [X509 : term,X511 : term,X510 : term,X508 : term] : ((X508 = X511) | (((ap @ X511 @ X509)) != ((ap @ X508 @ X510)))) => ! [X515 : term,X512 : term,X514 : term,X513 : term] : ((((ap @ (sub @ X513 @ id) @ X514)) != ((ap @ (sub @ X515 @ id) @ X512))) | (X513 = X515))))) & (((d2term @ d_one)) = ((lam @ (d2term @ d_one)))) & (! [X342 : term,X340 : term,X343 : term,X341 : term] : ((X341 = X342) | (((ap @ X342 @ X340)) != ((ap @ X341 @ X343)))) <=> (apinj1 = $true)) & ((induction2lem_lthm = $true) <=> (! [X264 : term,X263 : subst] : (((sub @ one @ (push @ X264 @ X263))) = X264) => (! [X266 : subst,X265 : term] : (((comp @ sh @ (push @ X265 @ X266))) = X266) => (! [X267 : subst] : (((comp @ X267 @ id)) = X267) => (! [X268 : (term > $o),X269 : term] : (~ ! [X273 : term,X272 : term] : (($true != ((X268 @ X272))) | ($true = ((X268 @ (ap @ X272 @ X273)))) | ($true != ((X268 @ X273)))) | ~ ! [X271 : term] : (($true = ((X268 @ (lam @ X271)))) | ($true != ((X268 @ X271)))) | ~ ! [X270 : term] : ((((X268 @ X270)) = $true) | (((var @ X270)) != $true)) | (((X268 @ X269)) = $true)) => ! [X275 : subst,X276 : term,X274 : (term > $o)] : (~ ! [X277 : term] : (~ ! [X278 : term] : ((((X274 @ (sub @ X277 @ (push @ X278 @ id)))) = $true) | ($true != ((X274 @ X278)))) | (((X274 @ (lam @ X277))) = $true)) | ~ ! [X279 : term,X280 : term] : ((((X274 @ X279)) != $true) | ($true != ((X274 @ X280))) | (((X274 @ (ap @ X280 @ X279))) = $true)) | ($true = ((X274 @ (sub @ X276 @ X275)))) | ~ ! [X281 : term] : (($true = ((X274 @ (sub @ X281 @ X275)))) | (((var @ X281)) != $true)))))))) & (((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id))) != $true) & (pushprop_lem1v2_gthm = $true) & (axmap = $true) & ((hoasinduction_lem2 = $true) <=> ! [X252 : term,X251 : term,X250 : (subst > term > subst > $o)] : (($true != ((X250 @ id @ X252 @ id))) | ~ ! [X262 : subst,X259 : term,X261 : subst,X260 : subst] : (($true = ((X250 @ X261 @ X259 @ (comp @ X262 @ X260)))) | ($true != ((X250 @ (comp @ X261 @ X262) @ (sub @ X259 @ X262) @ X260)))) | ($true = ((X250 @ id @ (ap @ X251 @ X252) @ id))) | ~ ! [X256 : subst,X255 : term,X258 : subst,X257 : subst] : (($true = ((X250 @ (comp @ X258 @ X257) @ (sub @ X255 @ X257) @ X256))) | ($true != ((X250 @ X258 @ X255 @ (comp @ X257 @ X256))))) | ~ ! [X253 : term,X254 : term] : (($true != ((X250 @ id @ X253 @ id))) | (((X250 @ id @ X254 @ id)) != $true) | (((X250 @ id @ (ap @ (sub @ X254 @ id) @ X253) @ id)) = $true)) | (((X250 @ id @ X251 @ id)) != $true))) & (((d2term @ d_one)) = ((sub @ (d2term @ d_one) @ (d2subst @ d_id)))) & (hoasapnotvar_lthm = $true) & ((hoaslaminj = $true) <=> ! [X531 : (subst > term > term),X529 : subst,X532 : term,X530 : (subst > term > term)] : (~ ! [X535 : subst,X533 : subst,X534 : term] : (((X531 @ (comp @ X535 @ X533) @ (sub @ X534 @ X533))) = ((sub @ (X531 @ X535 @ X534) @ X533))) | (((X530 @ X529 @ X532)) = ((X531 @ X529 @ X532))) | (((lam @ (X530 @ sh @ one))) != ((lam @ (X531 @ sh @ one)))) | ~ ! [X537 : subst,X536 : term,X538 : subst] : (((X530 @ (comp @ X537 @ X538) @ (sub @ X536 @ X538))) = ((sub @ (X530 @ X537 @ X536) @ X538))))) & (axclos = $true) & ! [X149 : d_term] : (d_one = X149) & (substmonoid_gthm = $true) & ((! [X36 : term] : (((sub @ X36 @ id)) = X36) => (! [X39 : term,X38 : (term > $o),X37 : subst] : (~ ! [X44 : term] : (($true = ((X38 @ (sub @ X44 @ X37)))) | ($true != ((var @ X44)))) | ~ ! [X40 : term] : (($true = ((X38 @ (lam @ X40)))) | ~ ! [X41 : term] : (($true != ((X38 @ X41))) | ($true = ((X38 @ (sub @ X40 @ (push @ X41 @ id))))))) | ($true = ((X38 @ (sub @ X39 @ X37)))) | ~ ! [X43 : term,X42 : term] : ((((X38 @ X43)) != $true) | ($true = ((X38 @ (ap @ X42 @ X43)))) | (((X38 @ X42)) != $true))) => ! [X45 : term,X46 : (term > $o)] : (($true = ((X46 @ X45))) | ~ ! [X50 : term] : ((((X46 @ (lam @ X50))) = $true) | ~ ! [X51 : term] : (($true != ((X46 @ X51))) | ($true = ((X46 @ (sub @ X50 @ (push @ X51 @ id))))))) | ~ ! [X48 : term,X49 : term] : (($true != ((X46 @ X49))) | ($true = ((X46 @ (ap @ X49 @ X48)))) | ($true != ((X46 @ X48)))) | ~ ! [X47 : term] : ((((X46 @ X47)) = $true) | ($true != ((var @ X47))))))) <=> (induction2_lthm = $true)) & ((hoasinduction_lem3aa_lthm = $true) <=> ! [X330 : term,X331 : (subst > term > subst > $o)] : (~ ! [X337 : term] : (($true = ((X331 @ id @ (sub @ X330 @ (push @ X337 @ id)) @ id))) | ($true != ((X331 @ id @ X337 @ id)))) | (((X331 @ id @ (lam @ (sub @ X330 @ (push @ one @ sh))) @ id)) = $true) | ~ ! [X332 : (subst > term > term)] : (~ ! [X336 : term,X334 : subst,X335 : subst] : (((X332 @ (comp @ X334 @ X335) @ (sub @ X336 @ X335))) = ((sub @ (X332 @ X334 @ X336) @ X335))) | ($true = ((X331 @ id @ (lam @ (X332 @ sh @ one)) @ id))) | ~ ! [X333 : term] : (($true != ((X331 @ id @ X333 @ id))) | ($true = ((X331 @ id @ (X332 @ id @ X333) @ id))))))) & (((d2term @ d_one)) = ((ap @ (d2term @ d_one) @ (d2term @ d_one)))) & (hoasinduction_lem1v2 = $true) & (! [X373 : term] : ~ ! [X374 : (subst > term > term)] : (((sub @ X373 @ (push @ one @ sh))) != ((X374 @ sh @ one))) <=> (hoasinduction_lem3b_lthm = $true)) & (hoasinduction_lem3b_gthm = $true) & (! [X494 : term,X493 : term,X492 : term,X495 : term] : ((((ap @ X492 @ X494)) != ((ap @ X493 @ X495))) | (X494 = X495)) <=> (apinj2 = $true)) & (hoaslamnotvar_gthm = $true) & (((d2subst @ d_id)) = sh) & ((! [X423 : term] : (((sub @ X423 @ id)) = X423) => (! [X424 : term,X425 : (subst > term > subst > $o)] : (~ ! [X426 : (subst > term > term)] : (($true = ((X425 @ id @ (lam @ (X426 @ sh @ one)) @ id))) | ~ ! [X428 : term,X429 : subst,X427 : subst] : (((X426 @ (comp @ X427 @ X429) @ (sub @ X428 @ X429))) = ((sub @ (X426 @ X427 @ X428) @ X429))) | ~ ! [X430 : term] : (($true = ((X425 @ id @ (X426 @ id @ X430) @ id))) | ($true != ((X425 @ id @ X430 @ id))))) | ($true = ((X425 @ id @ (lam @ (sub @ X424 @ (push @ one @ sh))) @ id))) | ~ ! [X431 : term] : (($true != ((X425 @ id @ X431 @ id))) | (((X425 @ id @ (sub @ X424 @ (push @ X431 @ id)) @ id)) = $true))) => ! [X433 : (subst > term > subst > $o),X432 : term] : (~ ! [X439 : term] : ((((X433 @ id @ (sub @ X432 @ (push @ X439 @ id)) @ id)) = $true) | ($true != ((X433 @ id @ X439 @ id)))) | ~ ! [X434 : (subst > term > term)] : (~ ! [X438 : term] : (($true = ((X433 @ id @ (X434 @ id @ X438) @ id))) | (((X433 @ id @ X438 @ id)) != $true)) | ~ ! [X437 : subst,X436 : subst,X435 : term] : (((X434 @ (comp @ X436 @ X437) @ (sub @ X435 @ X437))) = ((sub @ (X434 @ X436 @ X435) @ X437))) | ($true = ((X433 @ id @ (lam @ (X434 @ sh @ one)) @ id)))) | (((X433 @ id @ (lam @ X432) @ id)) = $true)))) <=> (hoasinduction_lem3a_lthm = $true)) & (! [X406 : (term > $o),X408 : term,X409 : (term > $o),X407 : subst,X410 : term] : ((((X406 @ (sub @ X410 @ (push @ X408 @ X407)))) = $true) | ($true != ((X409 @ X410)))) <=> (pushprop_lem1 = $true)) & (termmset_gthm = $true) & (lamnotap != $true) & (hoasapnotvar_gthm = $true) & ((hoasinduction_no_psi_cond_lthm = $true) <=> (! [X443 : (subst > term > subst > $o)] : ~ ! [X444 : (term > $o)] : ~ ! [X445 : term] : (((X443 @ id @ X445 @ id)) = ((X444 @ X445))) => (! [X446 : (term > $o),X447 : term] : (~ ! [X448 : term,X449 : term] : (($true != ((X446 @ X448))) | ($true = ((X446 @ (ap @ X449 @ X448)))) | ($true != ((X446 @ X449)))) | ~ ! [X452 : term] : (($true = ((X446 @ X452))) | (((var @ X452)) != $true)) | ~ ! [X450 : term] : (($true = ((X446 @ (lam @ X450)))) | ~ ! [X451 : term] : (($true != ((X446 @ X451))) | ($true = ((X446 @ (sub @ X450 @ (push @ X451 @ id))))))) | (((X446 @ X447)) = $true)) => (! [X453 : term] : (((sub @ X453 @ id)) = X453) => (! [X455 : (subst > term > subst > $o),X456 : term,X454 : (term > $o)] : (($true = ((X454 @ (lam @ X456)))) | ~ ! [X458 : term] : (($true = ((X454 @ (sub @ X456 @ (push @ X458 @ id))))) | ($true != ((X454 @ X458)))) | ~ ! [X459 : (subst > term > term)] : (~ ! [X461 : subst,X463 : term,X462 : subst] : (((X459 @ (comp @ X462 @ X461) @ (sub @ X463 @ X461))) = ((sub @ (X459 @ X462 @ X463) @ X461))) | ($true = ((X455 @ id @ (lam @ (X459 @ sh @ one)) @ id))) | ~ ! [X460 : term] : (($true != ((X455 @ id @ X460 @ id))) | ($true = ((X455 @ id @ (X459 @ id @ X460) @ id))))) | ~ ! [X457 : term] : (((X454 @ X457)) = ((X455 @ id @ X457 @ id)))) => ! [X465 : (subst > term > subst > $o),X464 : term] : (~ ! [X466 : term,X467 : term] : ((((X465 @ id @ X467 @ id)) != $true) | ($true != ((X465 @ id @ X466 @ id))) | (((X465 @ id @ (ap @ (sub @ X466 @ id) @ X467) @ id)) = $true)) | ~ ! [X468 : (subst > term > term)] : (($true = ((X465 @ id @ (lam @ (X468 @ sh @ one)) @ id))) | ~ ! [X469 : term] : ((((X465 @ id @ (X468 @ id @ X469) @ id)) = $true) | (((X465 @ id @ X469 @ id)) != $true)) | ~ ! [X471 : subst,X470 : subst,X472 : term] : (((X468 @ (comp @ X470 @ X471) @ (sub @ X472 @ X471))) = ((sub @ (X468 @ X470 @ X472) @ X471)))) | ($true = ((X465 @ id @ X464 @ id))))))))) & (hoasinduction_lem3v2_gthm = $true) & (axabs = $true) & (hoasinduction_lem3a_gthm = $true) & (pushprop_lem1_gthm = $true) & (hoasapinj2_gthm = $true) & ((hoasinduction_lem3v2 = $true) <=> ! [X116 : (subst > term > subst > $o),X118 : term,X117 : (term > $o)] : (~ ! [X124 : term] : (($true != ((X117 @ X124))) | (((X117 @ (sub @ X118 @ (push @ X124 @ id)))) = $true)) | ($true = ((X117 @ (lam @ X118)))) | ~ ! [X129 : subst,X132 : term,X131 : subst,X130 : subst] : ((((X116 @ X129 @ X132 @ (comp @ X130 @ X131))) != $true) | (((X116 @ (comp @ X129 @ X130) @ (sub @ X132 @ X130) @ X131)) = $true)) | ~ ! [X126 : subst,X127 : term,X125 : subst,X128 : subst] : ((((X116 @ (comp @ X125 @ X128) @ (sub @ X127 @ X128) @ X126)) != $true) | ($true = ((X116 @ X125 @ X127 @ (comp @ X128 @ X126))))) | ~ ! [X133 : term] : (((X116 @ id @ X133 @ id)) = ((X117 @ X133))) | ~ ! [X119 : (subst > term > term)] : (~ ! [X122 : term,X120 : subst,X121 : subst] : (((X119 @ (comp @ X121 @ X120) @ (sub @ X122 @ X120))) = ((sub @ (X119 @ X121 @ X122) @ X120))) | ($true = ((X116 @ id @ (lam @ (X119 @ sh @ one)) @ id))) | ~ ! [X123 : term] : ((((X116 @ id @ X123 @ id)) != $true) | ($true = ((X116 @ id @ (X119 @ id @ X123) @ id))))))) & (lamnotvar = $true) & ((hoasinduction_lem3v2a = $true) <=> ! [X80 : (subst > term > subst > $o),X78 : (term > $o),X79 : term] : (($true = ((X78 @ (lam @ X79)))) | ~ ! [X87 : term] : ((((X78 @ (sub @ X79 @ (push @ X87 @ id)))) = $true) | ($true != ((X78 @ X87)))) | ~ ! [X81 : term] : (((X78 @ X81)) = ((X80 @ id @ X81 @ id))) | ~ ! [X82 : (subst > term > term)] : (($true = ((X80 @ id @ (lam @ (X82 @ sh @ one)) @ id))) | ~ ! [X83 : term] : ((((X80 @ id @ (X82 @ id @ X83) @ id)) = $true) | (((X80 @ id @ X83 @ id)) != $true)) | ~ ! [X86 : subst,X84 : subst,X85 : term] : (((sub @ (X82 @ X84 @ X85) @ X86)) = ((X82 @ (comp @ X84 @ X86) @ (sub @ X85 @ X86))))))) & ((hoasinduction_lem3 = $true) <=> ! [X61 : term,X60 : (subst > term > subst > $o)] : (($true = ((X60 @ id @ (lam @ X61) @ id))) | ~ ! [X75 : term] : ((((X60 @ id @ X75 @ id)) != $true) | (((X60 @ id @ (sub @ X61 @ (push @ X75 @ id)) @ id)) = $true)) | ~ ! [X62 : (subst > term > term)] : (~ ! [X66 : term] : (($true = ((X60 @ id @ (X62 @ id @ X66) @ id))) | ($true != ((X60 @ id @ X66 @ id)))) | (((X60 @ id @ (lam @ (X62 @ sh @ one)) @ id)) = $true) | ~ ! [X65 : subst,X64 : subst,X63 : term] : (((sub @ (X62 @ X64 @ X63) @ X65)) = ((X62 @ (comp @ X64 @ X65) @ (sub @ X63 @ X65))))) | ~ ! [X68 : subst,X70 : subst,X67 : term,X69 : subst] : (($true = ((X60 @ X68 @ X67 @ (comp @ X69 @ X70)))) | (((X60 @ (comp @ X68 @ X69) @ (sub @ X67 @ X69) @ X70)) != $true)) | ~ ! [X72 : term,X71 : subst,X73 : subst,X74 : subst] : ((((X60 @ X73 @ X72 @ (comp @ X74 @ X71))) != $true) | ($true = ((X60 @ (comp @ X73 @ X74) @ (sub @ X72 @ X74) @ X71)))))) & (axassoc = $true) & (! [X481 : term,X482 : (subst > term > term),X480 : term] : (~ ! [X485 : subst,X483 : term,X484 : subst] : (((sub @ (X482 @ X484 @ X483) @ X485)) = ((X482 @ (comp @ X484 @ X485) @ (sub @ X483 @ X485)))) | (((ap @ (sub @ X481 @ id) @ X480)) != ((lam @ (X482 @ sh @ one))))) <=> (hoaslamnotap = $true)) & ((pushprop_lem0 = $true) <=> ! [X476 : (term > $o),X477 : subst,X475 : term] : ~ ! [X478 : (term > $o)] : ~ ! [X479 : term] : (((X476 @ (sub @ X479 @ (push @ X475 @ X477)))) = ((X478 @ X479)))) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y1 @ Y2) = (Y0 @ id @ Y2 @ id)))))))) & (hoasinduction_lem1v2_gthm = $true) & (! [X497 : subst,X496 : term] : (((sub @ one @ (push @ X496 @ X497))) = X496) <=> (axvarcons = $true)) & (! [X500 : term,X502 : term,X503 : term,X501 : term] : ((X502 = X503) | (((ap @ (sub @ X502 @ id) @ X501)) != ((ap @ (sub @ X503 @ id) @ X500)))) <=> (hoasapinj1 = $true)) & ((substmonoid_lthm = $true) <=> (! [X486 : subst] : (((comp @ id @ X486)) = X486) => (! [X487 : subst] : (((comp @ X487 @ id)) = X487) => (! [X489 : subst] : (((comp @ X489 @ id)) = X489) & ! [X488 : subst] : (((comp @ id @ X488)) = X488))))) & (induction2_gthm = $true) & ((induction = $true) <=> ! [X523 : term,X524 : (term > $o)] : (~ ! [X526 : term,X527 : term] : (($true != ((X524 @ X527))) | (((X524 @ X526)) != $true) | ($true = ((X524 @ (ap @ X526 @ X527))))) | (((X524 @ X523)) = $true) | ~ ! [X528 : term] : ((((var @ X528)) != $true) | (((X524 @ X528)) = $true)) | ~ ! [X525 : term] : (($true = ((X524 @ (lam @ X525)))) | ($true != ((X524 @ X525)))))) & ((hoasinduction_lem0 = $true) <=> ! [X520 : (subst > term > subst > $o)] : ~ ! [X521 : (term > $o)] : ~ ! [X522 : term] : (((X521 @ X522)) = ((X520 @ id @ X522 @ id)))) & (hoasapnotvar = $true) & (((d2subst @ d_id)) = id) & (axapp = $true) & ((axidl = $true) <=> ! [X9 : subst] : (((comp @ id @ X9)) = X9)) & (! [X338 : term] : ~ ! [X339 : (subst > term > term)] : (((X339 @ sh @ one)) != ((sub @ X338 @ (push @ one @ sh)))) <=> (hoasinduction_lem3b = $true)) & (induction2lem_gthm = $true) & (ulamvarsh = $true) & ((! [X380 : term] : ~ ! [X381 : (subst > term > term)] : ~ ! [X383 : term,X382 : subst] : (((sub @ X380 @ (push @ X383 @ X382))) = ((X381 @ X382 @ X383))) => (! [X384 : term] : (((sub @ X384 @ id)) = X384) => ! [X387 : (term > $o),X385 : (subst > term > subst > $o),X386 : term] : (($true = ((X387 @ (lam @ X386)))) | ~ ! [X389 : term] : (((X387 @ X389)) = ((X385 @ id @ X389 @ id))) | ~ ! [X390 : (subst > term > term)] : (~ ! [X394 : term] : (($true = ((X385 @ id @ (X390 @ id @ X394) @ id))) | (((X385 @ id @ X394 @ id)) != $true)) | ~ ! [X392 : subst,X391 : term,X393 : subst] : (((X390 @ (comp @ X393 @ X392) @ (sub @ X391 @ X392))) = ((sub @ (X390 @ X393 @ X391) @ X392))) | ($true = ((X385 @ id @ (lam @ (X390 @ sh @ one)) @ id)))) | ~ ! [X388 : term] : ((((X387 @ (sub @ X386 @ (push @ X388 @ id)))) = $true) | (((X387 @ X388)) != $true))))) <=> (hoasinduction_lem3v2a_lthm = $true)) & (! [X539 : term] : (((sub @ X539 @ id)) = X539) <=> (termmset = $true)) & ((pushprop_lem1_lthm = $true) <=> (! [X108 : subst,X107 : term] : (((sub @ one @ (push @ X107 @ X108))) = X107) => (! [X109 : subst,X110 : term] : (((comp @ sh @ (push @ X110 @ X109))) = X109) => ! [X111 : term,X112 : (term > $o),X113 : (term > $o),X115 : subst,X114 : term] : (($true != ((X112 @ X111))) | (((X113 @ (sub @ X111 @ (push @ X114 @ X115)))) = $true))))) & (! [X440 : term] : (((sub @ X440 @ id)) = X440) <=> (axvarid = $true)) & ((substmonoid = $true) <=> (! [X77 : subst] : (((comp @ X77 @ id)) = X77) & ! [X76 : subst] : (((comp @ id @ X76)) = X76))) & ((hoasinduction_lem3v2_f_lthm = $true) <=> ! [X369 : term] : ~ ! [X370 : (subst > term > term)] : ~ ! [X371 : subst,X372 : term] : (((X370 @ X371 @ X372)) = ((sub @ X369 @ (push @ X372 @ X371))))) & ! [X441 : term] : ? [X442 : d_term] : (((d2term @ X442)) = X441) & ((hoasinduction_lem3v2_lthm = $true) <=> (! [X88 : term] : (((sub @ X88 @ id)) = X88) => ! [X91 : (subst > term > subst > $o),X89 : term,X90 : (term > $o)] : (~ ! [X98 : term] : (($true = ((X90 @ (sub @ X89 @ (push @ X98 @ id))))) | ($true != ((X90 @ X98)))) | ~ ! [X92 : (subst > term > term)] : (~ ! [X95 : subst,X94 : term,X93 : subst] : (((sub @ (X92 @ X95 @ X94) @ X93)) = ((X92 @ (comp @ X95 @ X93) @ (sub @ X94 @ X93)))) | (((X91 @ id @ (lam @ (X92 @ sh @ one)) @ id)) = $true) | ~ ! [X96 : term] : ((((X91 @ id @ X96 @ id)) != $true) | ($true = ((X91 @ id @ (X92 @ id @ X96) @ id))))) | (((X90 @ (lam @ X89))) = $true) | ~ ! [X97 : term] : (((X91 @ id @ X97 @ id)) = ((X90 @ X97))) | ~ ! [X100 : subst,X101 : subst,X99 : subst,X102 : term] : (($true != ((X91 @ X99 @ X102 @ (comp @ X101 @ X100)))) | ($true = ((X91 @ (comp @ X99 @ X101) @ (sub @ X102 @ X101) @ X100)))) | ~ ! [X103 : subst,X104 : term,X106 : subst,X105 : subst] : (($true = ((X91 @ X106 @ X104 @ (comp @ X103 @ X105)))) | ($true != ((X91 @ (comp @ X106 @ X103) @ (sub @ X104 @ X103) @ X105))))))) & ! [X398 : d_term,X397 : d_term] : ((((d2term @ X398)) = ((d2term @ X397))) => (X397 = X398)) & (pushprop_lthm_orig = $true) & (ulamvarind = $true) & ((! [X400 : subst,X399 : term] : (((sub @ one @ (push @ X399 @ X400))) = X399) => ! [X404 : term,X401 : (term > $o),X402 : subst,X403 : (term > $o)] : (~ ! [X405 : term] : (((X403 @ X405)) = ((X401 @ (sub @ X405 @ (push @ X404 @ X402))))) | ($true = ((X403 @ one))) | (((X401 @ X404)) != $true))) <=> (pushprop_lem1v2_lthm = $true)) & ((axscons = $true) <=> ! [X375 : subst] : (((push @ (sub @ one @ X375) @ (comp @ sh @ X375))) = X375)) & ((! [X297 : subst,X298 : term] : (((sub @ one @ (push @ X298 @ X297))) = X298) => (! [X300 : subst,X299 : term] : (((comp @ sh @ (push @ X299 @ X300))) = X300) => (! [X301 : term,X302 : term] : ((X301 = X302) | (((lam @ X302)) != ((lam @ X301)))) => ! [X306 : (subst > term > term),X305 : term,X304 : subst,X303 : (subst > term > term)] : (~ ! [X312 : subst,X310 : subst,X311 : term] : (((sub @ (X306 @ X310 @ X311) @ X312)) = ((X306 @ (comp @ X310 @ X312) @ (sub @ X311 @ X312)))) | (((X306 @ X304 @ X305)) = ((X303 @ X304 @ X305))) | ~ ! [X308 : subst,X307 : term,X309 : subst] : (((sub @ (X303 @ X308 @ X307) @ X309)) = ((X303 @ (comp @ X308 @ X309) @ (sub @ X307 @ X309)))) | (((lam @ (X303 @ sh @ one))) != ((lam @ (X306 @ sh @ one)))))))) <=> (hoaslaminj_lthm = $true)) & (pushprop_lem2v2 = $true) & (hoasapinj1_gthm = $true) & (! [X0 : term,X1 : (subst > term > subst > $o)] : (~ ! [X2 : (subst > term > term)] : (~ ! [X3 : subst,X5 : term,X4 : subst] : (((sub @ (X2 @ X3 @ X5) @ X4)) = ((X2 @ (comp @ X3 @ X4) @ (sub @ X5 @ X4)))) | (((X1 @ id @ (lam @ (X2 @ sh @ one)) @ id)) = $true) | ~ ! [X6 : term] : ((((X1 @ id @ X6 @ id)) != $true) | (((X1 @ id @ (X2 @ id @ X6) @ id)) = $true))) | ($true = ((X1 @ id @ (lam @ (sub @ X0 @ (push @ one @ sh))) @ id))) | ~ ! [X7 : term] : ((((X1 @ id @ (sub @ X0 @ (push @ X7 @ id)) @ id)) = $true) | ($true != ((X1 @ id @ X7 @ id))))) <=> (hoasinduction_lem3aa = $true)) & ((axidr = $true) <=> ! [X8 : subst] : (((comp @ X8 @ id)) = X8)) & ((hoasapinj2 = $true) <=> ! [X378 : term,X377 : term,X376 : term,X379 : term] : ((X377 = X379) | (((ap @ (sub @ X378 @ id) @ X379)) != ((ap @ (sub @ X376 @ id) @ X377))))) & (! [X287 : (subst > term > subst > $o),X288 : term] : ((((X287 @ id @ (lam @ X288) @ id)) = $true) | ~ ! [X289 : (subst > term > term)] : (~ ! [X293 : term,X291 : subst,X292 : subst] : (((sub @ (X289 @ X292 @ X293) @ X291)) = ((X289 @ (comp @ X292 @ X291) @ (sub @ X293 @ X291)))) | (((X287 @ id @ (lam @ (X289 @ sh @ one)) @ id)) = $true) | ~ ! [X290 : term] : ((((X287 @ id @ (X289 @ id @ X290) @ id)) = $true) | (((X287 @ id @ X290 @ id)) != $true))) | ~ ! [X294 : term] : (($true = ((X287 @ id @ (sub @ X288 @ (push @ X294 @ id)) @ id))) | (((X287 @ id @ X294 @ id)) != $true))) <=> (hoasinduction_lem3a = $true)) & (hoaslamnotvar_lthm = $true) & (pushprop_lem0_gthm = $true) & ((hoasinduction_lem0_lthm = $true) <=> ! [X504 : (subst > term > subst > $o)] : ~ ! [X505 : (term > $o)] : ~ ! [X506 : term] : (((X505 @ X506)) = ((X504 @ id @ X506 @ id)))) & ((! [X316 : term,X315 : term,X313 : term,X314 : term] : ((((ap @ X313 @ X315)) != ((ap @ X314 @ X316))) | (X315 = X316)) => ! [X320 : term,X317 : term,X319 : term,X318 : term] : ((((ap @ (sub @ X320 @ id) @ X318)) != ((ap @ (sub @ X317 @ id) @ X319))) | (X318 = X319))) <=> (hoasapinj2_lthm = $true)) & (pushprop_lem3v2 = $true) & (hoasinduction_lem2_gthm = $true) & (pushprop_gthm = $true) & (((d2subst @ d_id)) = ((comp @ (d2subst @ d_id) @ (d2subst @ d_id)))) & (apnotvar = $true) & (hoasinduction_lem3_gthm = $true) & (pushprop = $true) & ((axshiftcons = $true) <=> ! [X396 : term,X395 : subst] : (((comp @ sh @ (push @ X396 @ X395))) = X395)) & (axvarshift = $true) & (hoasinduction_gthm = $true) & (hoasinduction_lem1_gthm = $true) & (hoaslamnotap_gthm = $true) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & (pushprop_lthm = $true) & (hoaslamnotap_lthm = $true) & ((hoasinduction_lthm_3 = $true) <=> (! [X150 : (subst > term > subst > $o)] : ~ ! [X151 : (term > $o)] : ~ ! [X152 : term] : (((X150 @ id @ X152 @ id)) = ((X151 @ X152))) => (! [X153 : (term > $o),X154 : term] : (($true = ((X153 @ X154))) | ~ ! [X157 : term] : ((((X153 @ (lam @ X157))) = $true) | ~ ! [X158 : term] : (($true != ((X153 @ X158))) | (((X153 @ (sub @ X157 @ (push @ X158 @ id)))) = $true))) | ~ ! [X159 : term] : (($true = ((X153 @ X159))) | ($true != ((var @ X159)))) | ~ ! [X155 : term,X156 : term] : ((((X153 @ X155)) != $true) | ($true = ((X153 @ (ap @ X156 @ X155)))) | ($true != ((X153 @ X156))))) => (! [X160 : term] : (((sub @ X160 @ id)) = X160) => (! [X161 : (term > $o),X162 : term,X163 : (subst > term > subst > $o)] : (~ ! [X169 : term] : (($true != ((X161 @ X169))) | (((X161 @ (sub @ X162 @ (push @ X169 @ id)))) = $true)) | ~ ! [X170 : term] : (((X161 @ X170)) = ((X163 @ id @ X170 @ id))) | ~ ! [X164 : (subst > term > term)] : (~ ! [X168 : term] : ((((X163 @ id @ (X164 @ id @ X168) @ id)) = $true) | (((X163 @ id @ X168 @ id)) != $true)) | ~ ! [X165 : term,X166 : subst,X167 : subst] : (((sub @ (X164 @ X166 @ X165) @ X167)) = ((X164 @ (comp @ X166 @ X167) @ (sub @ X165 @ X167)))) | ($true = ((X163 @ id @ (lam @ (X164 @ sh @ one)) @ id)))) | (((X161 @ (lam @ X162))) = $true)) => ! [X171 : term,X172 : (subst > term > subst > $o)] : (~ ! [X173 : term] : (($true = ((X172 @ id @ X173 @ id))) | ($true != ((var @ (sub @ X173 @ id))))) | ~ ! [X184 : (subst > term > term)] : (~ ! [X185 : term] : ((((X172 @ id @ (X184 @ id @ X185) @ id)) = $true) | (((X172 @ id @ X185 @ id)) != $true)) | (((X172 @ id @ (lam @ (X184 @ sh @ one)) @ id)) = $true) | ~ ! [X186 : term,X187 : subst,X188 : subst] : (((sub @ (X184 @ X188 @ X186) @ X187)) = ((X184 @ (comp @ X188 @ X187) @ (sub @ X186 @ X187))))) | ($true = ((X172 @ id @ X171 @ id))) | ~ ! [X175 : term,X174 : term] : ((((X172 @ id @ (ap @ (sub @ X174 @ id) @ X175) @ id)) = $true) | ($true != ((X172 @ id @ X175 @ id))) | (((X172 @ id @ X174 @ id)) != $true)) | ~ ! [X180 : term,X182 : subst,X181 : subst,X183 : subst] : (($true = ((X172 @ X183 @ X180 @ (comp @ X181 @ X182)))) | (((X172 @ (comp @ X183 @ X181) @ (sub @ X180 @ X181) @ X182)) != $true)) | ~ ! [X177 : subst,X176 : subst,X178 : subst,X179 : term] : (($true != ((X172 @ X178 @ X179 @ (comp @ X176 @ X177)))) | ($true = ((X172 @ (comp @ X178 @ X176) @ (sub @ X179 @ X176) @ X177))))))))))),
  inference(flattening,[],[f8])).
thf(f10,plain,(
  (! [X54 : term,X52 : (term > $o),X53 : subst] : (? [X58 : term] : (! [X59 : term] : (($true != ((X52 @ X59))) | ($true = ((X52 @ (sub @ X58 @ (push @ X59 @ id)))))) & (((X52 @ (lam @ X58))) != $true)) | ? [X56 : term,X57 : term] : ((((X52 @ X56)) = $true) & ($true = ((X52 @ X57))) & ($true != ((X52 @ (ap @ X56 @ X57))))) | ? [X55 : term] : ((((X52 @ (sub @ X55 @ X53))) != $true) & ($true = ((var @ X55)))) | ($true = ((X52 @ (sub @ X54 @ X53))))) <=> (induction2lem = $true)) & (! [X516 : term] : ? [X517 : (subst > term > term)] : ! [X519 : subst,X518 : term] : (((sub @ X516 @ (push @ X518 @ X519))) = ((X517 @ X519 @ X518))) <=> (hoasinduction_lem3v2_f = $true)) & ((hoasinduction_lem3_lthm = $true) <=> ((! [X353 : (subst > term > subst > $o),X354 : term] : (? [X363 : subst,X364 : subst,X362 : subst,X361 : term] : (($true != ((X353 @ X363 @ X361 @ (comp @ X364 @ X362)))) & (((X353 @ (comp @ X363 @ X364) @ (sub @ X361 @ X364) @ X362)) = $true)) | ? [X367 : term,X366 : subst,X365 : subst,X368 : subst] : (($true = ((X353 @ X366 @ X367 @ (comp @ X365 @ X368)))) & (((X353 @ (comp @ X366 @ X365) @ (sub @ X367 @ X365) @ X368)) != $true)) | ? [X355 : term] : (($true != ((X353 @ id @ (sub @ X354 @ (push @ X355 @ id)) @ id))) & ($true = ((X353 @ id @ X355 @ id)))) | ? [X356 : (subst > term > term)] : (! [X357 : term] : (($true != ((X353 @ id @ X357 @ id))) | ($true = ((X353 @ id @ (X356 @ id @ X357) @ id)))) & (((X353 @ id @ (lam @ (X356 @ sh @ one)) @ id)) != $true) & ! [X359 : subst,X358 : subst,X360 : term] : (((sub @ (X356 @ X358 @ X360) @ X359)) = ((X356 @ (comp @ X358 @ X359) @ (sub @ X360 @ X359))))) | (((X353 @ id @ (lam @ X354) @ id)) = $true)) | ? [X345 : term,X346 : (subst > term > subst > $o)] : ((((X346 @ id @ (lam @ (sub @ X345 @ (push @ one @ sh))) @ id)) != $true) & ! [X348 : (subst > term > term)] : (? [X349 : term] : (($true != ((X346 @ id @ (X348 @ id @ X349) @ id))) & ($true = ((X346 @ id @ X349 @ id)))) | ? [X351 : subst,X350 : term,X352 : subst] : (((sub @ (X348 @ X352 @ X350) @ X351)) != ((X348 @ (comp @ X352 @ X351) @ (sub @ X350 @ X351)))) | ($true = ((X346 @ id @ (lam @ (X348 @ sh @ one)) @ id)))) & ! [X347 : term] : (($true != ((X346 @ id @ X347 @ id))) | ($true = ((X346 @ id @ (sub @ X345 @ (push @ X347 @ id)) @ id)))))) | ? [X344 : term] : (((sub @ X344 @ id)) != X344))) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (! [X135 : term,X137 : (term > $o),X134 : term,X136 : (subst > term > subst > $o)] : ((((X137 @ (ap @ X135 @ X134))) = $true) | (((X137 @ X135)) != $true) | ? [X147 : term,X148 : term] : (($true = ((X136 @ id @ X148 @ id))) & ($true = ((X136 @ id @ X147 @ id))) & ($true != ((X136 @ id @ (ap @ (sub @ X148 @ id) @ X147) @ id)))) | ? [X143 : term,X144 : subst,X145 : subst,X142 : subst] : (($true = ((X136 @ (comp @ X142 @ X145) @ (sub @ X143 @ X145) @ X144))) & ($true != ((X136 @ X142 @ X143 @ (comp @ X145 @ X144))))) | ($true != ((X137 @ X134))) | ? [X141 : subst,X138 : term,X140 : subst,X139 : subst] : (($true != ((X136 @ (comp @ X140 @ X141) @ (sub @ X138 @ X141) @ X139))) & (((X136 @ X140 @ X138 @ (comp @ X141 @ X139))) = $true)) | ? [X146 : term] : (((X136 @ id @ X146 @ id)) != ((X137 @ X146)))) <=> (hoasinduction_lem2v2 = $true)) & ! [X498 : subst] : ? [X499 : d_subst] : (((d2subst @ X499)) = X498) & ((pushprop_lem1v2 = $true) <=> ! [X284 : subst,X282 : (term > $o),X285 : term,X283 : (term > $o)] : (($true = ((X282 @ one))) | ? [X286 : term] : (((X282 @ X286)) != ((X283 @ (sub @ X286 @ (push @ X285 @ X284))))) | (((X283 @ X285)) != $true))) & (hoasinduction_lem1 = $true) & (! [X18 : (subst > term > subst > $o),X17 : term] : (? [X26 : (subst > term > term)] : (! [X28 : subst,X29 : term,X27 : subst] : (((X26 @ (comp @ X27 @ X28) @ (sub @ X29 @ X28))) = ((sub @ (X26 @ X27 @ X29) @ X28))) & ! [X30 : term] : ((((X18 @ id @ (X26 @ id @ X30) @ id)) = $true) | ($true != ((X18 @ id @ X30 @ id)))) & ($true != ((X18 @ id @ (lam @ (X26 @ sh @ one)) @ id)))) | ? [X21 : term] : ((((X18 @ id @ X21 @ id)) != $true) & ($true = ((var @ (sub @ X21 @ id))))) | ($true = ((X18 @ id @ X17 @ id))) | ? [X20 : term,X19 : term] : (($true = ((X18 @ id @ X20 @ id))) & (((X18 @ id @ X19 @ id)) = $true) & (((X18 @ id @ (ap @ (sub @ X19 @ id) @ X20) @ id)) != $true)) | ? [X22 : subst,X23 : subst,X25 : term,X24 : subst] : (($true = ((X18 @ X22 @ X25 @ (comp @ X24 @ X23)))) & (((X18 @ (comp @ X22 @ X24) @ (sub @ X25 @ X24) @ X23)) != $true)) | ? [X31 : subst,X34 : subst,X33 : subst,X32 : term] : (($true != ((X18 @ X31 @ X32 @ (comp @ X33 @ X34)))) & ($true = ((X18 @ (comp @ X31 @ X33) @ (sub @ X32 @ X33) @ X34))))) <=> (hoasinduction = $true)) & (! [X491 : term,X490 : term] : ((X490 = X491) | (((lam @ X490)) != ((lam @ X491)))) <=> (laminj = $true)) & (hoaslaminj_gthm = $true) & (! [X412 : (subst > term > subst > $o),X411 : term] : ((((X412 @ id @ (lam @ (sub @ X411 @ (push @ one @ sh))) @ id)) = $true) | ? [X413 : term] : ((((X412 @ id @ (sub @ X411 @ (push @ X413 @ id)) @ id)) != $true) & (((X412 @ id @ X413 @ id)) = $true)) | ? [X414 : term,X415 : (subst > term > term)] : ((((X412 @ id @ (lam @ (X415 @ sh @ one)) @ id)) != $true) & ! [X419 : subst,X417 : term,X418 : subst] : (((sub @ (X415 @ X419 @ X417) @ X418)) = ((sub @ (sub @ X414 @ (push @ X417 @ X419)) @ X418))) & ! [X422 : subst,X420 : term,X421 : subst] : (((sub @ X414 @ (push @ (sub @ X420 @ X421) @ (comp @ X422 @ X421)))) = ((X415 @ (comp @ X422 @ X421) @ (sub @ X420 @ X421)))) & ! [X416 : term] : (($true != ((X412 @ id @ X416 @ id))) | ($true = ((X412 @ id @ (X415 @ id @ X416) @ id)))))) <=> (hoasinduction_lem3aaa = $true)) & (hoasinduction_lem2v2_gthm = $true) & ! [X35 : d_subst] : (d_id = X35) & (((d2term @ d_one)) = one) & ((hoasinduction_no_psi_cond = $true) <=> ! [X322 : (subst > term > subst > $o),X321 : term] : (($true = ((X322 @ id @ X321 @ id))) | ? [X324 : term,X323 : term] : ((((X322 @ id @ X324 @ id)) = $true) & ($true = ((X322 @ id @ X323 @ id))) & ($true != ((X322 @ id @ (ap @ (sub @ X323 @ id) @ X324) @ id)))) | ? [X325 : (subst > term > term)] : (! [X326 : term] : ((((X322 @ id @ X326 @ id)) != $true) | (((X322 @ id @ (X325 @ id @ X326) @ id)) = $true)) & ! [X329 : subst,X327 : subst,X328 : term] : (((sub @ (X325 @ X329 @ X328) @ X327)) = ((X325 @ (comp @ X329 @ X327) @ (sub @ X328 @ X327)))) & (((X322 @ id @ (lam @ (X325 @ sh @ one)) @ id)) != $true)))) & ((shinj = $true) <=> ! [X296 : term,X295 : term] : ((((sub @ X295 @ sh)) != ((sub @ X296 @ sh))) | (X295 = X296))) & (((d2term @ d_one)) = ((hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one)))) & (((var @ (d2term @ d_one))) != $true) & ! [X474 : d_subst,X473 : d_subst] : ((X473 = X474) | (((d2subst @ X474)) != ((d2subst @ X473)))) & (! [X11 : term,X10 : (term > $o)] : (? [X12 : term] : (($true != ((X10 @ X12))) & (((var @ X12)) = $true)) | ? [X13 : term,X14 : term] : ((((X10 @ X14)) = $true) & ($true != ((X10 @ (ap @ X14 @ X13)))) & (((X10 @ X13)) = $true)) | ($true = ((X10 @ X11))) | ? [X15 : term] : (! [X16 : term] : ((((X10 @ X16)) != $true) | ($true = ((X10 @ (sub @ X15 @ (push @ X16 @ id)))))) & (((X10 @ (lam @ X15))) != $true))) <=> (induction2 = $true)) & (! [X191 : term,X189 : subst,X190 : (term > $o)] : ? [X192 : (term > $o)] : ! [X193 : term] : (((X190 @ (sub @ X193 @ (push @ X191 @ X189)))) = ((X192 @ X193))) <=> (pushprop_lem0_lthm = $true)) & (hoasinduction_lem1_lthm = $true) & (hoaslamnotvar = $true) & (((d2subst @ d_id)) = ((push @ (d2term @ d_one) @ (d2subst @ d_id)))) & ((termmset_lthm = $true) <=> (? [X194 : term] : (((sub @ X194 @ id)) != X194) | ! [X195 : term] : (((sub @ X195 @ id)) = X195))) & ((((! [X232 : (subst > term > subst > $o),X233 : term] : (? [X244 : term] : (($true != ((X232 @ id @ X244 @ id))) & ($true = ((var @ (sub @ X244 @ id))))) | ? [X235 : subst,X237 : subst,X236 : subst,X234 : term] : (($true != ((X232 @ X236 @ X234 @ (comp @ X237 @ X235)))) & (((X232 @ (comp @ X236 @ X237) @ (sub @ X234 @ X237) @ X235)) = $true)) | ? [X242 : subst,X240 : subst,X241 : subst,X243 : term] : ((((X232 @ X241 @ X243 @ (comp @ X242 @ X240))) = $true) & ($true != ((X232 @ (comp @ X241 @ X242) @ (sub @ X243 @ X242) @ X240)))) | ($true = ((X232 @ id @ X233 @ id))) | ? [X245 : (subst > term > term)] : (! [X249 : term] : (($true = ((X232 @ id @ (X245 @ id @ X249) @ id))) | (((X232 @ id @ X249 @ id)) != $true)) & ! [X248 : term,X247 : subst,X246 : subst] : (((sub @ (X245 @ X246 @ X248) @ X247)) = ((X245 @ (comp @ X246 @ X247) @ (sub @ X248 @ X247)))) & (((X232 @ id @ (lam @ (X245 @ sh @ one)) @ id)) != $true)) | ? [X239 : term,X238 : term] : (($true != ((X232 @ id @ (ap @ (sub @ X239 @ id) @ X238) @ id))) & (((X232 @ id @ X239 @ id)) = $true) & (((X232 @ id @ X238 @ id)) = $true))) | ? [X217 : (subst > term > subst > $o),X216 : term] : (! [X218 : term] : (($true != ((X217 @ id @ X218 @ id))) | (((X217 @ id @ (sub @ X216 @ (push @ X218 @ id)) @ id)) = $true)) & ! [X227 : (subst > term > term)] : (? [X231 : term] : (($true != ((X217 @ id @ (X227 @ id @ X231) @ id))) & (((X217 @ id @ X231 @ id)) = $true)) | (((X217 @ id @ (lam @ (X227 @ sh @ one)) @ id)) = $true) | ? [X228 : term,X229 : subst,X230 : subst] : (((sub @ (X227 @ X230 @ X228) @ X229)) != ((X227 @ (comp @ X230 @ X229) @ (sub @ X228 @ X229))))) & ! [X226 : subst,X225 : subst,X223 : term,X224 : subst] : (($true != ((X217 @ X226 @ X223 @ (comp @ X224 @ X225)))) | ($true = ((X217 @ (comp @ X226 @ X224) @ (sub @ X223 @ X224) @ X225)))) & ($true != ((X217 @ id @ (lam @ X216) @ id))) & ! [X220 : subst,X221 : subst,X222 : subst,X219 : term] : (($true != ((X217 @ (comp @ X220 @ X222) @ (sub @ X219 @ X222) @ X221))) | (((X217 @ X220 @ X219 @ (comp @ X222 @ X221))) = $true)))) | ? [X203 : term,X204 : term,X205 : (subst > term > subst > $o)] : (! [X214 : subst,X215 : term,X213 : subst,X212 : subst] : (($true != ((X205 @ (comp @ X213 @ X214) @ (sub @ X215 @ X214) @ X212))) | ($true = ((X205 @ X213 @ X215 @ (comp @ X214 @ X212))))) & ! [X211 : term,X210 : term] : ((((X205 @ id @ X211 @ id)) != $true) | ($true != ((X205 @ id @ X210 @ id))) | ($true = ((X205 @ id @ (ap @ (sub @ X210 @ id) @ X211) @ id)))) & ! [X209 : subst,X207 : subst,X208 : term,X206 : subst] : ((((X205 @ (comp @ X207 @ X209) @ (sub @ X208 @ X209) @ X206)) = $true) | (((X205 @ X207 @ X208 @ (comp @ X209 @ X206))) != $true)) & (((X205 @ id @ X204 @ id)) = $true) & ($true != ((X205 @ id @ (ap @ X204 @ X203) @ id))) & (((X205 @ id @ X203 @ id)) = $true))) | ? [X196 : term,X197 : (term > $o)] : (($true != ((X197 @ X196))) & ! [X200 : term,X199 : term] : (($true = ((X197 @ (ap @ X200 @ X199)))) | ($true != ((X197 @ X199))) | (((X197 @ X200)) != $true)) & ! [X198 : term] : (($true = ((X197 @ X198))) | (((var @ X198)) != $true)) & ! [X201 : term] : (? [X202 : term] : (($true != ((X197 @ (sub @ X201 @ (push @ X202 @ id))))) & ($true = ((X197 @ X202)))) | (((X197 @ (lam @ X201))) = $true)))) <=> (hoasinduction_lthm = $true)) & (pushprop_lem3v2_lthm = $true) & (pushprop_lem2v2_gthm = $true) & (ulamvar1 != $true) & (hoasinduction_lem2_lthm = $true) & (pushprop_lem2v2_lthm = $true) & ((hoasapinj1_lthm = $true) <=> ((! [X515 : term,X512 : term,X514 : term,X513 : term] : ((((ap @ (sub @ X513 @ id) @ X514)) != ((ap @ (sub @ X515 @ id) @ X512))) | (X513 = X515)) | ? [X510 : term,X511 : term,X508 : term,X509 : term] : ((((ap @ X511 @ X509)) = ((ap @ X508 @ X510))) & (X508 != X511))) | ? [X507 : term] : (((sub @ X507 @ id)) != X507))) & (((d2term @ d_one)) = ((lam @ (d2term @ d_one)))) & (! [X342 : term,X340 : term,X343 : term,X341 : term] : ((X341 = X342) | (((ap @ X342 @ X340)) != ((ap @ X341 @ X343)))) <=> (apinj1 = $true)) & ((induction2lem_lthm = $true) <=> ((((! [X276 : term,X274 : (term > $o),X275 : subst] : (? [X279 : term,X280 : term] : ((((X274 @ (ap @ X280 @ X279))) != $true) & ($true = ((X274 @ X280))) & (((X274 @ X279)) = $true)) | ($true = ((X274 @ (sub @ X276 @ X275)))) | ? [X277 : term] : (! [X278 : term] : ((((X274 @ (sub @ X277 @ (push @ X278 @ id)))) = $true) | ($true != ((X274 @ X278)))) & (((X274 @ (lam @ X277))) != $true)) | ? [X281 : term] : (($true != ((X274 @ (sub @ X281 @ X275)))) & (((var @ X281)) = $true))) | ? [X269 : term,X268 : (term > $o)] : (! [X270 : term] : ((((X268 @ X270)) = $true) | (((var @ X270)) != $true)) & ! [X273 : term,X272 : term] : (($true != ((X268 @ X272))) | ($true = ((X268 @ (ap @ X272 @ X273)))) | ($true != ((X268 @ X273)))) & ! [X271 : term] : (($true = ((X268 @ (lam @ X271)))) | ($true != ((X268 @ X271)))) & (((X268 @ X269)) != $true))) | ? [X267 : subst] : (((comp @ X267 @ id)) != X267)) | ? [X265 : term,X266 : subst] : (((comp @ sh @ (push @ X265 @ X266))) != X266)) | ? [X263 : subst,X264 : term] : (((sub @ one @ (push @ X264 @ X263))) != X264))) & (((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id))) != $true) & (pushprop_lem1v2_gthm = $true) & (axmap = $true) & ((hoasinduction_lem2 = $true) <=> ! [X250 : (subst > term > subst > $o),X252 : term,X251 : term] : (? [X254 : term,X253 : term] : ((((X250 @ id @ (ap @ (sub @ X254 @ id) @ X253) @ id)) != $true) & ($true = ((X250 @ id @ X253 @ id))) & (((X250 @ id @ X254 @ id)) = $true)) | ($true != ((X250 @ id @ X252 @ id))) | ? [X257 : subst,X258 : subst,X255 : term,X256 : subst] : (($true != ((X250 @ (comp @ X258 @ X257) @ (sub @ X255 @ X257) @ X256))) & ($true = ((X250 @ X258 @ X255 @ (comp @ X257 @ X256))))) | ? [X262 : subst,X260 : subst,X259 : term,X261 : subst] : (($true != ((X250 @ X261 @ X259 @ (comp @ X262 @ X260)))) & ($true = ((X250 @ (comp @ X261 @ X262) @ (sub @ X259 @ X262) @ X260)))) | ($true = ((X250 @ id @ (ap @ X251 @ X252) @ id))) | (((X250 @ id @ X251 @ id)) != $true))) & (((d2term @ d_one)) = ((sub @ (d2term @ d_one) @ (d2subst @ d_id)))) & (hoasapnotvar_lthm = $true) & (! [X529 : subst,X530 : (subst > term > term),X532 : term,X531 : (subst > term > term)] : (? [X535 : subst,X534 : term,X533 : subst] : (((X531 @ (comp @ X535 @ X533) @ (sub @ X534 @ X533))) != ((sub @ (X531 @ X535 @ X534) @ X533))) | ? [X536 : term,X538 : subst,X537 : subst] : (((X530 @ (comp @ X537 @ X538) @ (sub @ X536 @ X538))) != ((sub @ (X530 @ X537 @ X536) @ X538))) | (((X530 @ X529 @ X532)) = ((X531 @ X529 @ X532))) | (((lam @ (X530 @ sh @ one))) != ((lam @ (X531 @ sh @ one))))) <=> (hoaslaminj = $true)) & (axclos = $true) & ! [X149 : d_term] : (d_one = X149) & (substmonoid_gthm = $true) & (((! [X46 : (term > $o),X45 : term] : (? [X47 : term] : (($true = ((var @ X47))) & (((X46 @ X47)) != $true)) | ($true = ((X46 @ X45))) | ? [X48 : term,X49 : term] : (($true = ((X46 @ X48))) & ($true != ((X46 @ (ap @ X49 @ X48)))) & ($true = ((X46 @ X49)))) | ? [X50 : term] : (! [X51 : term] : (($true != ((X46 @ X51))) | ($true = ((X46 @ (sub @ X50 @ (push @ X51 @ id)))))) & (((X46 @ (lam @ X50))) != $true))) | ? [X39 : term,X38 : (term > $o),X37 : subst] : (! [X43 : term,X42 : term] : ((((X38 @ X43)) != $true) | ($true = ((X38 @ (ap @ X42 @ X43)))) | (((X38 @ X42)) != $true)) & ! [X40 : term] : (($true = ((X38 @ (lam @ X40)))) | ? [X41 : term] : (($true != ((X38 @ (sub @ X40 @ (push @ X41 @ id))))) & ($true = ((X38 @ X41))))) & ($true != ((X38 @ (sub @ X39 @ X37)))) & ! [X44 : term] : (($true = ((X38 @ (sub @ X44 @ X37)))) | ($true != ((var @ X44)))))) | ? [X36 : term] : (((sub @ X36 @ id)) != X36)) <=> (induction2_lthm = $true)) & (! [X331 : (subst > term > subst > $o),X330 : term] : ((((X331 @ id @ (lam @ (sub @ X330 @ (push @ one @ sh))) @ id)) = $true) | ? [X332 : (subst > term > term)] : (! [X336 : term,X334 : subst,X335 : subst] : (((X332 @ (comp @ X334 @ X335) @ (sub @ X336 @ X335))) = ((sub @ (X332 @ X334 @ X336) @ X335))) & ($true != ((X331 @ id @ (lam @ (X332 @ sh @ one)) @ id))) & ! [X333 : term] : (($true != ((X331 @ id @ X333 @ id))) | ($true = ((X331 @ id @ (X332 @ id @ X333) @ id))))) | ? [X337 : term] : (($true = ((X331 @ id @ X337 @ id))) & ($true != ((X331 @ id @ (sub @ X330 @ (push @ X337 @ id)) @ id))))) <=> (hoasinduction_lem3aa_lthm = $true)) & (((d2term @ d_one)) = ((ap @ (d2term @ d_one) @ (d2term @ d_one)))) & (hoasinduction_lem1v2 = $true) & ((hoasinduction_lem3b_lthm = $true) <=> ! [X373 : term] : ? [X374 : (subst > term > term)] : (((sub @ X373 @ (push @ one @ sh))) = ((X374 @ sh @ one)))) & (hoasinduction_lem3b_gthm = $true) & (! [X494 : term,X493 : term,X492 : term,X495 : term] : ((((ap @ X492 @ X494)) != ((ap @ X493 @ X495))) | (X494 = X495)) <=> (apinj2 = $true)) & (hoaslamnotvar_gthm = $true) & (((d2subst @ d_id)) = sh) & (((! [X432 : term,X433 : (subst > term > subst > $o)] : (? [X439 : term] : (($true = ((X433 @ id @ X439 @ id))) & (((X433 @ id @ (sub @ X432 @ (push @ X439 @ id)) @ id)) != $true)) | ? [X434 : (subst > term > term)] : (($true != ((X433 @ id @ (lam @ (X434 @ sh @ one)) @ id))) & ! [X437 : subst,X436 : subst,X435 : term] : (((X434 @ (comp @ X436 @ X437) @ (sub @ X435 @ X437))) = ((sub @ (X434 @ X436 @ X435) @ X437))) & ! [X438 : term] : (($true = ((X433 @ id @ (X434 @ id @ X438) @ id))) | (((X433 @ id @ X438 @ id)) != $true))) | (((X433 @ id @ (lam @ X432) @ id)) = $true)) | ? [X424 : term,X425 : (subst > term > subst > $o)] : (! [X426 : (subst > term > term)] : (? [X430 : term] : (($true != ((X425 @ id @ (X426 @ id @ X430) @ id))) & ($true = ((X425 @ id @ X430 @ id)))) | ($true = ((X425 @ id @ (lam @ (X426 @ sh @ one)) @ id))) | ? [X427 : subst,X428 : term,X429 : subst] : (((X426 @ (comp @ X427 @ X429) @ (sub @ X428 @ X429))) != ((sub @ (X426 @ X427 @ X428) @ X429)))) & ($true != ((X425 @ id @ (lam @ (sub @ X424 @ (push @ one @ sh))) @ id))) & ! [X431 : term] : (($true != ((X425 @ id @ X431 @ id))) | (((X425 @ id @ (sub @ X424 @ (push @ X431 @ id)) @ id)) = $true)))) | ? [X423 : term] : (((sub @ X423 @ id)) != X423)) <=> (hoasinduction_lem3a_lthm = $true)) & (! [X406 : (term > $o),X408 : term,X409 : (term > $o),X407 : subst,X410 : term] : ((((X406 @ (sub @ X410 @ (push @ X408 @ X407)))) = $true) | ($true != ((X409 @ X410)))) <=> (pushprop_lem1 = $true)) & (termmset_gthm = $true) & (lamnotap != $true) & (hoasapnotvar_gthm = $true) & ((hoasinduction_no_psi_cond_lthm = $true) <=> ((((! [X464 : term,X465 : (subst > term > subst > $o)] : (($true = ((X465 @ id @ X464 @ id))) | ? [X467 : term,X466 : term] : ((((X465 @ id @ (ap @ (sub @ X466 @ id) @ X467) @ id)) != $true) & (((X465 @ id @ X467 @ id)) = $true) & ($true = ((X465 @ id @ X466 @ id)))) | ? [X468 : (subst > term > term)] : (! [X471 : subst,X470 : subst,X472 : term] : (((X468 @ (comp @ X470 @ X471) @ (sub @ X472 @ X471))) = ((sub @ (X468 @ X470 @ X472) @ X471))) & ! [X469 : term] : ((((X465 @ id @ (X468 @ id @ X469) @ id)) = $true) | (((X465 @ id @ X469 @ id)) != $true)) & ($true != ((X465 @ id @ (lam @ (X468 @ sh @ one)) @ id))))) | ? [X456 : term,X455 : (subst > term > subst > $o),X454 : (term > $o)] : (! [X459 : (subst > term > term)] : (($true = ((X455 @ id @ (lam @ (X459 @ sh @ one)) @ id))) | ? [X460 : term] : (($true = ((X455 @ id @ X460 @ id))) & ($true != ((X455 @ id @ (X459 @ id @ X460) @ id)))) | ? [X461 : subst,X463 : term,X462 : subst] : (((X459 @ (comp @ X462 @ X461) @ (sub @ X463 @ X461))) != ((sub @ (X459 @ X462 @ X463) @ X461)))) & ! [X458 : term] : (($true = ((X454 @ (sub @ X456 @ (push @ X458 @ id))))) | ($true != ((X454 @ X458)))) & ($true != ((X454 @ (lam @ X456)))) & ! [X457 : term] : (((X454 @ X457)) = ((X455 @ id @ X457 @ id))))) | ? [X453 : term] : (((sub @ X453 @ id)) != X453)) | ? [X447 : term,X446 : (term > $o)] : (! [X448 : term,X449 : term] : (($true != ((X446 @ X448))) | ($true = ((X446 @ (ap @ X449 @ X448)))) | ($true != ((X446 @ X449)))) & ! [X452 : term] : (($true = ((X446 @ X452))) | (((var @ X452)) != $true)) & ! [X450 : term] : (($true = ((X446 @ (lam @ X450)))) | ? [X451 : term] : (($true = ((X446 @ X451))) & ($true != ((X446 @ (sub @ X450 @ (push @ X451 @ id))))))) & (((X446 @ X447)) != $true))) | ? [X443 : (subst > term > subst > $o)] : ! [X444 : (term > $o)] : ? [X445 : term] : (((X443 @ id @ X445 @ id)) != ((X444 @ X445))))) & (hoasinduction_lem3v2_gthm = $true) & (axabs = $true) & (hoasinduction_lem3a_gthm = $true) & (pushprop_lem1_gthm = $true) & (hoasapinj2_gthm = $true) & (! [X117 : (term > $o),X118 : term,X116 : (subst > term > subst > $o)] : (? [X133 : term] : (((X116 @ id @ X133 @ id)) != ((X117 @ X133))) | ? [X125 : subst,X126 : subst,X128 : subst,X127 : term] : ((((X116 @ (comp @ X125 @ X128) @ (sub @ X127 @ X128) @ X126)) = $true) & ($true != ((X116 @ X125 @ X127 @ (comp @ X128 @ X126))))) | ? [X131 : subst,X132 : term,X129 : subst,X130 : subst] : ((((X116 @ (comp @ X129 @ X130) @ (sub @ X132 @ X130) @ X131)) != $true) & (((X116 @ X129 @ X132 @ (comp @ X130 @ X131))) = $true)) | ($true = ((X117 @ (lam @ X118)))) | ? [X124 : term] : (($true = ((X117 @ X124))) & (((X117 @ (sub @ X118 @ (push @ X124 @ id)))) != $true)) | ? [X119 : (subst > term > term)] : (! [X123 : term] : ((((X116 @ id @ X123 @ id)) != $true) | ($true = ((X116 @ id @ (X119 @ id @ X123) @ id)))) & ($true != ((X116 @ id @ (lam @ (X119 @ sh @ one)) @ id))) & ! [X122 : term,X120 : subst,X121 : subst] : (((X119 @ (comp @ X121 @ X120) @ (sub @ X122 @ X120))) = ((sub @ (X119 @ X121 @ X122) @ X120))))) <=> (hoasinduction_lem3v2 = $true)) & (lamnotvar = $true) & ((hoasinduction_lem3v2a = $true) <=> ! [X80 : (subst > term > subst > $o),X78 : (term > $o),X79 : term] : (? [X81 : term] : (((X78 @ X81)) != ((X80 @ id @ X81 @ id))) | ($true = ((X78 @ (lam @ X79)))) | ? [X82 : (subst > term > term)] : (! [X83 : term] : ((((X80 @ id @ (X82 @ id @ X83) @ id)) = $true) | (((X80 @ id @ X83 @ id)) != $true)) & ($true != ((X80 @ id @ (lam @ (X82 @ sh @ one)) @ id))) & ! [X86 : subst,X84 : subst,X85 : term] : (((sub @ (X82 @ X84 @ X85) @ X86)) = ((X82 @ (comp @ X84 @ X86) @ (sub @ X85 @ X86))))) | ? [X87 : term] : (($true = ((X78 @ X87))) & (((X78 @ (sub @ X79 @ (push @ X87 @ id)))) != $true)))) & ((hoasinduction_lem3 = $true) <=> ! [X60 : (subst > term > subst > $o),X61 : term] : (? [X62 : (subst > term > term)] : ((((X60 @ id @ (lam @ (X62 @ sh @ one)) @ id)) != $true) & ! [X65 : subst,X64 : subst,X63 : term] : (((sub @ (X62 @ X64 @ X63) @ X65)) = ((X62 @ (comp @ X64 @ X65) @ (sub @ X63 @ X65)))) & ! [X66 : term] : (($true = ((X60 @ id @ (X62 @ id @ X66) @ id))) | ($true != ((X60 @ id @ X66 @ id))))) | ? [X73 : subst,X71 : subst,X74 : subst,X72 : term] : ((((X60 @ X73 @ X72 @ (comp @ X74 @ X71))) = $true) & ($true != ((X60 @ (comp @ X73 @ X74) @ (sub @ X72 @ X74) @ X71)))) | ? [X68 : subst,X69 : subst,X70 : subst,X67 : term] : (($true != ((X60 @ X68 @ X67 @ (comp @ X69 @ X70)))) & (((X60 @ (comp @ X68 @ X69) @ (sub @ X67 @ X69) @ X70)) = $true)) | ? [X75 : term] : ((((X60 @ id @ X75 @ id)) = $true) & (((X60 @ id @ (sub @ X61 @ (push @ X75 @ id)) @ id)) != $true)) | ($true = ((X60 @ id @ (lam @ X61) @ id))))) & (axassoc = $true) & ((hoaslamnotap = $true) <=> ! [X482 : (subst > term > term),X480 : term,X481 : term] : ((((ap @ (sub @ X481 @ id) @ X480)) != ((lam @ (X482 @ sh @ one)))) | ? [X485 : subst,X484 : subst,X483 : term] : (((sub @ (X482 @ X484 @ X483) @ X485)) != ((X482 @ (comp @ X484 @ X485) @ (sub @ X483 @ X485)))))) & (! [X475 : term,X477 : subst,X476 : (term > $o)] : ? [X478 : (term > $o)] : ! [X479 : term] : (((X476 @ (sub @ X479 @ (push @ X475 @ X477)))) = ((X478 @ X479))) <=> (pushprop_lem0 = $true)) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y1 @ Y2) = (Y0 @ id @ Y2 @ id)))))))) & (hoasinduction_lem1v2_gthm = $true) & (! [X497 : subst,X496 : term] : (((sub @ one @ (push @ X496 @ X497))) = X496) <=> (axvarcons = $true)) & (! [X500 : term,X502 : term,X503 : term,X501 : term] : ((X502 = X503) | (((ap @ (sub @ X502 @ id) @ X501)) != ((ap @ (sub @ X503 @ id) @ X500)))) <=> (hoasapinj1 = $true)) & ((substmonoid_lthm = $true) <=> (((! [X489 : subst] : (((comp @ X489 @ id)) = X489) & ! [X488 : subst] : (((comp @ id @ X488)) = X488)) | ? [X487 : subst] : (((comp @ X487 @ id)) != X487)) | ? [X486 : subst] : (((comp @ id @ X486)) != X486))) & (induction2_gthm = $true) & ((induction = $true) <=> ! [X524 : (term > $o),X523 : term] : (? [X525 : term] : (($true != ((X524 @ (lam @ X525)))) & ($true = ((X524 @ X525)))) | ? [X528 : term] : ((((X524 @ X528)) != $true) & (((var @ X528)) = $true)) | ? [X527 : term,X526 : term] : ((((X524 @ X526)) = $true) & ($true = ((X524 @ X527))) & ($true != ((X524 @ (ap @ X526 @ X527))))) | (((X524 @ X523)) = $true))) & (! [X520 : (subst > term > subst > $o)] : ? [X521 : (term > $o)] : ! [X522 : term] : (((X521 @ X522)) = ((X520 @ id @ X522 @ id))) <=> (hoasinduction_lem0 = $true)) & (hoasapnotvar = $true) & (((d2subst @ d_id)) = id) & (axapp = $true) & ((axidl = $true) <=> ! [X9 : subst] : (((comp @ id @ X9)) = X9)) & (! [X338 : term] : ? [X339 : (subst > term > term)] : (((X339 @ sh @ one)) = ((sub @ X338 @ (push @ one @ sh)))) <=> (hoasinduction_lem3b = $true)) & (induction2lem_gthm = $true) & (ulamvarsh = $true) & (((! [X387 : (term > $o),X386 : term,X385 : (subst > term > subst > $o)] : (($true = ((X387 @ (lam @ X386)))) | ? [X390 : (subst > term > term)] : (! [X392 : subst,X391 : term,X393 : subst] : (((X390 @ (comp @ X393 @ X392) @ (sub @ X391 @ X392))) = ((sub @ (X390 @ X393 @ X391) @ X392))) & ($true != ((X385 @ id @ (lam @ (X390 @ sh @ one)) @ id))) & ! [X394 : term] : (($true = ((X385 @ id @ (X390 @ id @ X394) @ id))) | (((X385 @ id @ X394 @ id)) != $true))) | ? [X388 : term] : ((((X387 @ X388)) = $true) & (((X387 @ (sub @ X386 @ (push @ X388 @ id)))) != $true)) | ? [X389 : term] : (((X387 @ X389)) != ((X385 @ id @ X389 @ id)))) | ? [X384 : term] : (((sub @ X384 @ id)) != X384)) | ? [X380 : term] : ! [X381 : (subst > term > term)] : ? [X382 : subst,X383 : term] : (((sub @ X380 @ (push @ X383 @ X382))) != ((X381 @ X382 @ X383)))) <=> (hoasinduction_lem3v2a_lthm = $true)) & (! [X539 : term] : (((sub @ X539 @ id)) = X539) <=> (termmset = $true)) & ((pushprop_lem1_lthm = $true) <=> ((! [X111 : term,X112 : (term > $o),X113 : (term > $o),X115 : subst,X114 : term] : (($true != ((X112 @ X111))) | (((X113 @ (sub @ X111 @ (push @ X114 @ X115)))) = $true)) | ? [X110 : term,X109 : subst] : (((comp @ sh @ (push @ X110 @ X109))) != X109)) | ? [X107 : term,X108 : subst] : (((sub @ one @ (push @ X107 @ X108))) != X107))) & (! [X440 : term] : (((sub @ X440 @ id)) = X440) <=> (axvarid = $true)) & ((substmonoid = $true) <=> (! [X77 : subst] : (((comp @ X77 @ id)) = X77) & ! [X76 : subst] : (((comp @ id @ X76)) = X76))) & (! [X369 : term] : ? [X370 : (subst > term > term)] : ! [X371 : subst,X372 : term] : (((X370 @ X371 @ X372)) = ((sub @ X369 @ (push @ X372 @ X371)))) <=> (hoasinduction_lem3v2_f_lthm = $true)) & ! [X441 : term] : ? [X442 : d_term] : (((d2term @ X442)) = X441) & ((! [X91 : (subst > term > subst > $o),X89 : term,X90 : (term > $o)] : (? [X106 : subst,X103 : subst,X105 : subst,X104 : term] : (($true != ((X91 @ X106 @ X104 @ (comp @ X103 @ X105)))) & ($true = ((X91 @ (comp @ X106 @ X103) @ (sub @ X104 @ X103) @ X105)))) | ? [X101 : subst,X99 : subst,X102 : term,X100 : subst] : (($true = ((X91 @ X99 @ X102 @ (comp @ X101 @ X100)))) & ($true != ((X91 @ (comp @ X99 @ X101) @ (sub @ X102 @ X101) @ X100)))) | (((X90 @ (lam @ X89))) = $true) | ? [X97 : term] : (((X91 @ id @ X97 @ id)) != ((X90 @ X97))) | ? [X92 : (subst > term > term)] : (! [X96 : term] : ((((X91 @ id @ X96 @ id)) != $true) | ($true = ((X91 @ id @ (X92 @ id @ X96) @ id)))) & ! [X95 : subst,X94 : term,X93 : subst] : (((sub @ (X92 @ X95 @ X94) @ X93)) = ((X92 @ (comp @ X95 @ X93) @ (sub @ X94 @ X93)))) & (((X91 @ id @ (lam @ (X92 @ sh @ one)) @ id)) != $true)) | ? [X98 : term] : (($true != ((X90 @ (sub @ X89 @ (push @ X98 @ id))))) & ($true = ((X90 @ X98))))) | ? [X88 : term] : (((sub @ X88 @ id)) != X88)) <=> (hoasinduction_lem3v2_lthm = $true)) & ! [X398 : d_term,X397 : d_term] : ((X397 = X398) | (((d2term @ X398)) != ((d2term @ X397)))) & (pushprop_lthm_orig = $true) & (ulamvarind = $true) & ((pushprop_lem1v2_lthm = $true) <=> (! [X402 : subst,X401 : (term > $o),X404 : term,X403 : (term > $o)] : ((((X401 @ X404)) != $true) | ? [X405 : term] : (((X403 @ X405)) != ((X401 @ (sub @ X405 @ (push @ X404 @ X402))))) | ($true = ((X403 @ one)))) | ? [X400 : subst,X399 : term] : (((sub @ one @ (push @ X399 @ X400))) != X399))) & ((axscons = $true) <=> ! [X375 : subst] : (((push @ (sub @ one @ X375) @ (comp @ sh @ X375))) = X375)) & ((((! [X304 : subst,X306 : (subst > term > term),X303 : (subst > term > term),X305 : term] : (? [X308 : subst,X309 : subst,X307 : term] : (((sub @ (X303 @ X308 @ X307) @ X309)) != ((X303 @ (comp @ X308 @ X309) @ (sub @ X307 @ X309)))) | (((X306 @ X304 @ X305)) = ((X303 @ X304 @ X305))) | (((lam @ (X303 @ sh @ one))) != ((lam @ (X306 @ sh @ one)))) | ? [X310 : subst,X311 : term,X312 : subst] : (((sub @ (X306 @ X310 @ X311) @ X312)) != ((X306 @ (comp @ X310 @ X312) @ (sub @ X311 @ X312))))) | ? [X301 : term,X302 : term] : ((((lam @ X302)) = ((lam @ X301))) & (X301 != X302))) | ? [X300 : subst,X299 : term] : (((comp @ sh @ (push @ X299 @ X300))) != X300)) | ? [X298 : term,X297 : subst] : (((sub @ one @ (push @ X298 @ X297))) != X298)) <=> (hoaslaminj_lthm = $true)) & (pushprop_lem2v2 = $true) & (hoasapinj1_gthm = $true) & (! [X0 : term,X1 : (subst > term > subst > $o)] : (? [X2 : (subst > term > term)] : ((((X1 @ id @ (lam @ (X2 @ sh @ one)) @ id)) != $true) & ! [X3 : subst,X5 : term,X4 : subst] : (((sub @ (X2 @ X3 @ X5) @ X4)) = ((X2 @ (comp @ X3 @ X4) @ (sub @ X5 @ X4)))) & ! [X6 : term] : ((((X1 @ id @ X6 @ id)) != $true) | (((X1 @ id @ (X2 @ id @ X6) @ id)) = $true))) | ? [X7 : term] : (($true = ((X1 @ id @ X7 @ id))) & (((X1 @ id @ (sub @ X0 @ (push @ X7 @ id)) @ id)) != $true)) | ($true = ((X1 @ id @ (lam @ (sub @ X0 @ (push @ one @ sh))) @ id)))) <=> (hoasinduction_lem3aa = $true)) & ((axidr = $true) <=> ! [X8 : subst] : (((comp @ X8 @ id)) = X8)) & ((hoasapinj2 = $true) <=> ! [X378 : term,X377 : term,X376 : term,X379 : term] : ((X377 = X379) | (((ap @ (sub @ X378 @ id) @ X379)) != ((ap @ (sub @ X376 @ id) @ X377))))) & ((hoasinduction_lem3a = $true) <=> ! [X287 : (subst > term > subst > $o),X288 : term] : ((((X287 @ id @ (lam @ X288) @ id)) = $true) | ? [X289 : (subst > term > term)] : ((((X287 @ id @ (lam @ (X289 @ sh @ one)) @ id)) != $true) & ! [X290 : term] : ((((X287 @ id @ (X289 @ id @ X290) @ id)) = $true) | (((X287 @ id @ X290 @ id)) != $true)) & ! [X293 : term,X291 : subst,X292 : subst] : (((sub @ (X289 @ X292 @ X293) @ X291)) = ((X289 @ (comp @ X292 @ X291) @ (sub @ X293 @ X291))))) | ? [X294 : term] : (($true != ((X287 @ id @ (sub @ X288 @ (push @ X294 @ id)) @ id))) & (((X287 @ id @ X294 @ id)) = $true)))) & (hoaslamnotvar_lthm = $true) & (pushprop_lem0_gthm = $true) & ((hoasinduction_lem0_lthm = $true) <=> ! [X504 : (subst > term > subst > $o)] : ? [X505 : (term > $o)] : ! [X506 : term] : (((X505 @ X506)) = ((X504 @ id @ X506 @ id)))) & ((hoasapinj2_lthm = $true) <=> (? [X313 : term,X315 : term,X316 : term,X314 : term] : ((X315 != X316) & (((ap @ X313 @ X315)) = ((ap @ X314 @ X316)))) | ! [X320 : term,X317 : term,X319 : term,X318 : term] : ((((ap @ (sub @ X320 @ id) @ X318)) != ((ap @ (sub @ X317 @ id) @ X319))) | (X318 = X319)))) & (pushprop_lem3v2 = $true) & (hoasinduction_lem2_gthm = $true) & (pushprop_gthm = $true) & (((d2subst @ d_id)) = ((comp @ (d2subst @ d_id) @ (d2subst @ d_id)))) & (apnotvar = $true) & (hoasinduction_lem3_gthm = $true) & (pushprop = $true) & ((axshiftcons = $true) <=> ! [X396 : term,X395 : subst] : (((comp @ sh @ (push @ X396 @ X395))) = X395)) & (axvarshift = $true) & (hoasinduction_gthm = $true) & (hoasinduction_lem1_gthm = $true) & (hoaslamnotap_gthm = $true) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & (pushprop_lthm = $true) & (hoaslamnotap_lthm = $true) & ((hoasinduction_lthm_3 = $true) <=> ((((! [X171 : term,X172 : (subst > term > subst > $o)] : (? [X178 : subst,X176 : subst,X177 : subst,X179 : term] : (($true != ((X172 @ (comp @ X178 @ X176) @ (sub @ X179 @ X176) @ X177))) & ($true = ((X172 @ X178 @ X179 @ (comp @ X176 @ X177))))) | ? [X184 : (subst > term > term)] : ((((X172 @ id @ (lam @ (X184 @ sh @ one)) @ id)) != $true) & ! [X185 : term] : ((((X172 @ id @ (X184 @ id @ X185) @ id)) = $true) | (((X172 @ id @ X185 @ id)) != $true)) & ! [X186 : term,X187 : subst,X188 : subst] : (((sub @ (X184 @ X188 @ X186) @ X187)) = ((X184 @ (comp @ X188 @ X187) @ (sub @ X186 @ X187))))) | ? [X173 : term] : (($true != ((X172 @ id @ X173 @ id))) & ($true = ((var @ (sub @ X173 @ id))))) | ($true = ((X172 @ id @ X171 @ id))) | ? [X175 : term,X174 : term] : ((((X172 @ id @ (ap @ (sub @ X174 @ id) @ X175) @ id)) != $true) & (((X172 @ id @ X174 @ id)) = $true) & ($true = ((X172 @ id @ X175 @ id)))) | ? [X181 : subst,X180 : term,X182 : subst,X183 : subst] : ((((X172 @ (comp @ X183 @ X181) @ (sub @ X180 @ X181) @ X182)) = $true) & ($true != ((X172 @ X183 @ X180 @ (comp @ X181 @ X182)))))) | ? [X162 : term,X163 : (subst > term > subst > $o),X161 : (term > $o)] : (! [X170 : term] : (((X161 @ X170)) = ((X163 @ id @ X170 @ id))) & ! [X164 : (subst > term > term)] : (($true = ((X163 @ id @ (lam @ (X164 @ sh @ one)) @ id))) | ? [X167 : subst,X166 : subst,X165 : term] : (((sub @ (X164 @ X166 @ X165) @ X167)) != ((X164 @ (comp @ X166 @ X167) @ (sub @ X165 @ X167)))) | ? [X168 : term] : ((((X163 @ id @ X168 @ id)) = $true) & (((X163 @ id @ (X164 @ id @ X168) @ id)) != $true))) & (((X161 @ (lam @ X162))) != $true) & ! [X169 : term] : (($true != ((X161 @ X169))) | (((X161 @ (sub @ X162 @ (push @ X169 @ id)))) = $true)))) | ? [X160 : term] : (((sub @ X160 @ id)) != X160)) | ? [X153 : (term > $o),X154 : term] : (! [X159 : term] : (($true = ((X153 @ X159))) | ($true != ((var @ X159)))) & ($true != ((X153 @ X154))) & ! [X157 : term] : ((((X153 @ (lam @ X157))) = $true) | ? [X158 : term] : (($true = ((X153 @ X158))) & (((X153 @ (sub @ X157 @ (push @ X158 @ id)))) != $true))) & ! [X155 : term,X156 : term] : ((((X153 @ X155)) != $true) | ($true = ((X153 @ (ap @ X156 @ X155)))) | ($true != ((X153 @ X156)))))) | ? [X150 : (subst > term > subst > $o)] : ! [X151 : (term > $o)] : ? [X152 : term] : (((X150 @ id @ X152 @ id)) != ((X151 @ X152)))))),
  inference(ennf_transformation,[],[f9])).
thf(f11,plain,(
  (pushprop_gthm = $true) & ((? [X344 : term] : (((sub @ X344 @ id)) != X344) | ? [X345 : term,X346 : (subst > term > subst > $o)] : ((((X346 @ id @ (lam @ (sub @ X345 @ (push @ one @ sh))) @ id)) != $true) & ! [X348 : (subst > term > term)] : (? [X349 : term] : (($true != ((X346 @ id @ (X348 @ id @ X349) @ id))) & ($true = ((X346 @ id @ X349 @ id)))) | ? [X351 : subst,X350 : term,X352 : subst] : (((sub @ (X348 @ X352 @ X350) @ X351)) != ((X348 @ (comp @ X352 @ X351) @ (sub @ X350 @ X351)))) | ($true = ((X346 @ id @ (lam @ (X348 @ sh @ one)) @ id)))) & ! [X347 : term] : (($true != ((X346 @ id @ X347 @ id))) | ($true = ((X346 @ id @ (sub @ X345 @ (push @ X347 @ id)) @ id))))) | ! [X353 : (subst > term > subst > $o),X354 : term] : (? [X363 : subst,X364 : subst,X362 : subst,X361 : term] : (($true != ((X353 @ X363 @ X361 @ (comp @ X364 @ X362)))) & (((X353 @ (comp @ X363 @ X364) @ (sub @ X361 @ X364) @ X362)) = $true)) | ? [X367 : term,X366 : subst,X365 : subst,X368 : subst] : (($true = ((X353 @ X366 @ X367 @ (comp @ X365 @ X368)))) & (((X353 @ (comp @ X366 @ X365) @ (sub @ X367 @ X365) @ X368)) != $true)) | ? [X355 : term] : (($true != ((X353 @ id @ (sub @ X354 @ (push @ X355 @ id)) @ id))) & ($true = ((X353 @ id @ X355 @ id)))) | ? [X356 : (subst > term > term)] : (! [X357 : term] : (($true != ((X353 @ id @ X357 @ id))) | ($true = ((X353 @ id @ (X356 @ id @ X357) @ id)))) & (((X353 @ id @ (lam @ (X356 @ sh @ one)) @ id)) != $true) & ! [X359 : subst,X358 : subst,X360 : term] : (((sub @ (X356 @ X358 @ X360) @ X359)) = ((X356 @ (comp @ X358 @ X359) @ (sub @ X360 @ X359))))) | (((X353 @ id @ (lam @ X354) @ id)) = $true))) <=> (hoasinduction_lem3_lthm = $true)) & (! [X520 : (subst > term > subst > $o)] : ? [X521 : (term > $o)] : ! [X522 : term] : (((X521 @ X522)) = ((X520 @ id @ X522 @ id))) <=> (hoasinduction_lem0 = $true)) & ((hoaslaminj_lthm = $true) <=> (! [X304 : subst,X306 : (subst > term > term),X303 : (subst > term > term),X305 : term] : (? [X308 : subst,X309 : subst,X307 : term] : (((sub @ (X303 @ X308 @ X307) @ X309)) != ((X303 @ (comp @ X308 @ X309) @ (sub @ X307 @ X309)))) | (((X306 @ X304 @ X305)) = ((X303 @ X304 @ X305))) | (((lam @ (X303 @ sh @ one))) != ((lam @ (X306 @ sh @ one)))) | ? [X310 : subst,X311 : term,X312 : subst] : (((sub @ (X306 @ X310 @ X311) @ X312)) != ((X306 @ (comp @ X310 @ X312) @ (sub @ X311 @ X312))))) | ? [X301 : term,X302 : term] : ((((lam @ X302)) = ((lam @ X301))) & (X301 != X302)) | ? [X300 : subst,X299 : term] : (((comp @ sh @ (push @ X299 @ X300))) != X300) | ? [X298 : term,X297 : subst] : (((sub @ one @ (push @ X298 @ X297))) != X298))) & (((d2term @ d_one)) = ((sub @ (d2term @ d_one) @ (d2subst @ d_id)))) & (hoaslamnotap_gthm = $true) & (pushprop_lem2v2_lthm = $true) & (! [X529 : subst,X530 : (subst > term > term),X532 : term,X531 : (subst > term > term)] : (? [X535 : subst,X534 : term,X533 : subst] : (((X531 @ (comp @ X535 @ X533) @ (sub @ X534 @ X533))) != ((sub @ (X531 @ X535 @ X534) @ X533))) | ? [X536 : term,X538 : subst,X537 : subst] : (((X530 @ (comp @ X537 @ X538) @ (sub @ X536 @ X538))) != ((sub @ (X530 @ X537 @ X536) @ X538))) | (((X530 @ X529 @ X532)) = ((X531 @ X529 @ X532))) | (((lam @ (X530 @ sh @ one))) != ((lam @ (X531 @ sh @ one))))) <=> (hoaslaminj = $true)) & ! [X441 : term] : ? [X442 : d_term] : (((d2term @ X442)) = X441) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & ((hoasinduction_no_psi_cond = $true) <=> ! [X322 : (subst > term > subst > $o),X321 : term] : (($true = ((X322 @ id @ X321 @ id))) | ? [X324 : term,X323 : term] : ((((X322 @ id @ X324 @ id)) = $true) & ($true = ((X322 @ id @ X323 @ id))) & ($true != ((X322 @ id @ (ap @ (sub @ X323 @ id) @ X324) @ id)))) | ? [X325 : (subst > term > term)] : (! [X326 : term] : ((((X322 @ id @ X326 @ id)) != $true) | (((X322 @ id @ (X325 @ id @ X326) @ id)) = $true)) & ! [X329 : subst,X327 : subst,X328 : term] : (((sub @ (X325 @ X329 @ X328) @ X327)) = ((X325 @ (comp @ X329 @ X327) @ (sub @ X328 @ X327)))) & (((X322 @ id @ (lam @ (X325 @ sh @ one)) @ id)) != $true)))) & (hoasapinj1_gthm = $true) & (hoaslamnotvar = $true) & ((axscons = $true) <=> ! [X375 : subst] : (((push @ (sub @ one @ X375) @ (comp @ sh @ X375))) = X375)) & (hoasinduction_lem1_lthm = $true) & (hoaslamnotap_lthm = $true) & (! [X539 : term] : (((sub @ X539 @ id)) = X539) <=> (termmset = $true)) & (((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id))) != $true) & (induction2lem_gthm = $true) & ((termmset_lthm = $true) <=> (? [X194 : term] : (((sub @ X194 @ id)) != X194) | ! [X195 : term] : (((sub @ X195 @ id)) = X195))) & ((hoasinduction_lem2 = $true) <=> ! [X250 : (subst > term > subst > $o),X252 : term,X251 : term] : (? [X254 : term,X253 : term] : ((((X250 @ id @ (ap @ (sub @ X254 @ id) @ X253) @ id)) != $true) & ($true = ((X250 @ id @ X253 @ id))) & (((X250 @ id @ X254 @ id)) = $true)) | ($true != ((X250 @ id @ X252 @ id))) | ? [X257 : subst,X258 : subst,X255 : term,X256 : subst] : (($true != ((X250 @ (comp @ X258 @ X257) @ (sub @ X255 @ X257) @ X256))) & ($true = ((X250 @ X258 @ X255 @ (comp @ X257 @ X256))))) | ? [X262 : subst,X260 : subst,X259 : term,X261 : subst] : (($true != ((X250 @ X261 @ X259 @ (comp @ X262 @ X260)))) & ($true = ((X250 @ (comp @ X261 @ X262) @ (sub @ X259 @ X262) @ X260)))) | ($true = ((X250 @ id @ (ap @ X251 @ X252) @ id))) | (((X250 @ id @ X251 @ id)) != $true))) & ((hoasinduction_lthm = $true) <=> (? [X196 : term,X197 : (term > $o)] : (($true != ((X197 @ X196))) & ! [X200 : term,X199 : term] : (($true = ((X197 @ (ap @ X200 @ X199)))) | ($true != ((X197 @ X199))) | (((X197 @ X200)) != $true)) & ! [X198 : term] : (($true = ((X197 @ X198))) | (((var @ X198)) != $true)) & ! [X201 : term] : (? [X202 : term] : (($true != ((X197 @ (sub @ X201 @ (push @ X202 @ id))))) & ($true = ((X197 @ X202)))) | (((X197 @ (lam @ X201))) = $true))) | ? [X203 : term,X204 : term,X205 : (subst > term > subst > $o)] : (! [X214 : subst,X215 : term,X213 : subst,X212 : subst] : (($true != ((X205 @ (comp @ X213 @ X214) @ (sub @ X215 @ X214) @ X212))) | ($true = ((X205 @ X213 @ X215 @ (comp @ X214 @ X212))))) & ! [X211 : term,X210 : term] : ((((X205 @ id @ X211 @ id)) != $true) | ($true != ((X205 @ id @ X210 @ id))) | ($true = ((X205 @ id @ (ap @ (sub @ X210 @ id) @ X211) @ id)))) & ! [X209 : subst,X207 : subst,X208 : term,X206 : subst] : ((((X205 @ (comp @ X207 @ X209) @ (sub @ X208 @ X209) @ X206)) = $true) | (((X205 @ X207 @ X208 @ (comp @ X209 @ X206))) != $true)) & (((X205 @ id @ X204 @ id)) = $true) & ($true != ((X205 @ id @ (ap @ X204 @ X203) @ id))) & (((X205 @ id @ X203 @ id)) = $true)) | ? [X217 : (subst > term > subst > $o),X216 : term] : (! [X218 : term] : (($true != ((X217 @ id @ X218 @ id))) | (((X217 @ id @ (sub @ X216 @ (push @ X218 @ id)) @ id)) = $true)) & ! [X227 : (subst > term > term)] : (? [X231 : term] : (($true != ((X217 @ id @ (X227 @ id @ X231) @ id))) & (((X217 @ id @ X231 @ id)) = $true)) | (((X217 @ id @ (lam @ (X227 @ sh @ one)) @ id)) = $true) | ? [X228 : term,X229 : subst,X230 : subst] : (((sub @ (X227 @ X230 @ X228) @ X229)) != ((X227 @ (comp @ X230 @ X229) @ (sub @ X228 @ X229))))) & ! [X226 : subst,X225 : subst,X223 : term,X224 : subst] : (($true != ((X217 @ X226 @ X223 @ (comp @ X224 @ X225)))) | ($true = ((X217 @ (comp @ X226 @ X224) @ (sub @ X223 @ X224) @ X225)))) & ($true != ((X217 @ id @ (lam @ X216) @ id))) & ! [X220 : subst,X221 : subst,X222 : subst,X219 : term] : (($true != ((X217 @ (comp @ X220 @ X222) @ (sub @ X219 @ X222) @ X221))) | (((X217 @ X220 @ X219 @ (comp @ X222 @ X221))) = $true))) | ! [X232 : (subst > term > subst > $o),X233 : term] : (? [X244 : term] : (($true != ((X232 @ id @ X244 @ id))) & ($true = ((var @ (sub @ X244 @ id))))) | ? [X235 : subst,X237 : subst,X236 : subst,X234 : term] : (($true != ((X232 @ X236 @ X234 @ (comp @ X237 @ X235)))) & (((X232 @ (comp @ X236 @ X237) @ (sub @ X234 @ X237) @ X235)) = $true)) | ? [X242 : subst,X240 : subst,X241 : subst,X243 : term] : ((((X232 @ X241 @ X243 @ (comp @ X242 @ X240))) = $true) & ($true != ((X232 @ (comp @ X241 @ X242) @ (sub @ X243 @ X242) @ X240)))) | ($true = ((X232 @ id @ X233 @ id))) | ? [X245 : (subst > term > term)] : (! [X249 : term] : (($true = ((X232 @ id @ (X245 @ id @ X249) @ id))) | (((X232 @ id @ X249 @ id)) != $true)) & ! [X248 : term,X247 : subst,X246 : subst] : (((sub @ (X245 @ X246 @ X248) @ X247)) = ((X245 @ (comp @ X246 @ X247) @ (sub @ X248 @ X247)))) & (((X232 @ id @ (lam @ (X245 @ sh @ one)) @ id)) != $true)) | ? [X239 : term,X238 : term] : (($true != ((X232 @ id @ (ap @ (sub @ X239 @ id) @ X238) @ id))) & (((X232 @ id @ X239 @ id)) = $true) & (((X232 @ id @ X238 @ id)) = $true))))) & (pushprop_lem1v2_gthm = $true) & (((d2subst @ d_id)) = ((comp @ (d2subst @ d_id) @ (d2subst @ d_id)))) & (hoasinduction_lem1_gthm = $true) & (! [X342 : term,X340 : term,X343 : term,X341 : term] : ((X341 = X342) | (((ap @ X342 @ X340)) != ((ap @ X341 @ X343)))) <=> (apinj1 = $true)) & (hoasapnotvar_gthm = $true) & (axmap = $true) & ((? [X36 : term] : (((sub @ X36 @ id)) != X36) | ! [X46 : (term > $o),X45 : term] : (? [X47 : term] : (($true = ((var @ X47))) & (((X46 @ X47)) != $true)) | ($true = ((X46 @ X45))) | ? [X48 : term,X49 : term] : (($true = ((X46 @ X48))) & ($true != ((X46 @ (ap @ X49 @ X48)))) & ($true = ((X46 @ X49)))) | ? [X50 : term] : (! [X51 : term] : (($true != ((X46 @ X51))) | ($true = ((X46 @ (sub @ X50 @ (push @ X51 @ id)))))) & (((X46 @ (lam @ X50))) != $true))) | ? [X39 : term,X38 : (term > $o),X37 : subst] : (! [X43 : term,X42 : term] : ((((X38 @ X43)) != $true) | ($true = ((X38 @ (ap @ X42 @ X43)))) | (((X38 @ X42)) != $true)) & ! [X40 : term] : (($true = ((X38 @ (lam @ X40)))) | ? [X41 : term] : (($true != ((X38 @ (sub @ X40 @ (push @ X41 @ id))))) & ($true = ((X38 @ X41))))) & ($true != ((X38 @ (sub @ X39 @ X37)))) & ! [X44 : term] : (($true = ((X38 @ (sub @ X44 @ X37)))) | ($true != ((var @ X44)))))) <=> (induction2_lthm = $true)) & (substmonoid_gthm = $true) & (axvarshift = $true) & (pushprop_lem0_gthm = $true) & (! [X135 : term,X137 : (term > $o),X134 : term,X136 : (subst > term > subst > $o)] : ((((X137 @ (ap @ X135 @ X134))) = $true) | (((X137 @ X135)) != $true) | ? [X147 : term,X148 : term] : (($true = ((X136 @ id @ X148 @ id))) & ($true = ((X136 @ id @ X147 @ id))) & ($true != ((X136 @ id @ (ap @ (sub @ X148 @ id) @ X147) @ id)))) | ? [X143 : term,X144 : subst,X145 : subst,X142 : subst] : (($true = ((X136 @ (comp @ X142 @ X145) @ (sub @ X143 @ X145) @ X144))) & ($true != ((X136 @ X142 @ X143 @ (comp @ X145 @ X144))))) | ($true != ((X137 @ X134))) | ? [X141 : subst,X138 : term,X140 : subst,X139 : subst] : (($true != ((X136 @ (comp @ X140 @ X141) @ (sub @ X138 @ X141) @ X139))) & (((X136 @ X140 @ X138 @ (comp @ X141 @ X139))) = $true)) | ? [X146 : term] : (((X136 @ id @ X146 @ id)) != ((X137 @ X146)))) <=> (hoasinduction_lem2v2 = $true)) & (((var @ (d2term @ d_one))) != $true) & (! [X440 : term] : (((sub @ X440 @ id)) = X440) <=> (axvarid = $true)) & ((? [X423 : term] : (((sub @ X423 @ id)) != X423) | ! [X432 : term,X433 : (subst > term > subst > $o)] : (? [X439 : term] : (($true = ((X433 @ id @ X439 @ id))) & (((X433 @ id @ (sub @ X432 @ (push @ X439 @ id)) @ id)) != $true)) | ? [X434 : (subst > term > term)] : (($true != ((X433 @ id @ (lam @ (X434 @ sh @ one)) @ id))) & ! [X437 : subst,X436 : subst,X435 : term] : (((X434 @ (comp @ X436 @ X437) @ (sub @ X435 @ X437))) = ((sub @ (X434 @ X436 @ X435) @ X437))) & ! [X438 : term] : (($true = ((X433 @ id @ (X434 @ id @ X438) @ id))) | (((X433 @ id @ X438 @ id)) != $true))) | (((X433 @ id @ (lam @ X432) @ id)) = $true)) | ? [X424 : term,X425 : (subst > term > subst > $o)] : (! [X426 : (subst > term > term)] : (? [X430 : term] : (($true != ((X425 @ id @ (X426 @ id @ X430) @ id))) & ($true = ((X425 @ id @ X430 @ id)))) | ($true = ((X425 @ id @ (lam @ (X426 @ sh @ one)) @ id))) | ? [X427 : subst,X428 : term,X429 : subst] : (((X426 @ (comp @ X427 @ X429) @ (sub @ X428 @ X429))) != ((sub @ (X426 @ X427 @ X428) @ X429)))) & ($true != ((X425 @ id @ (lam @ (sub @ X424 @ (push @ one @ sh))) @ id))) & ! [X431 : term] : (($true != ((X425 @ id @ X431 @ id))) | (((X425 @ id @ (sub @ X424 @ (push @ X431 @ id)) @ id)) = $true)))) <=> (hoasinduction_lem3a_lthm = $true)) & ((hoasinduction_lem3v2a = $true) <=> ! [X80 : (subst > term > subst > $o),X78 : (term > $o),X79 : term] : (? [X81 : term] : (((X78 @ X81)) != ((X80 @ id @ X81 @ id))) | ($true = ((X78 @ (lam @ X79)))) | ? [X82 : (subst > term > term)] : (! [X83 : term] : ((((X80 @ id @ (X82 @ id @ X83) @ id)) = $true) | (((X80 @ id @ X83 @ id)) != $true)) & ($true != ((X80 @ id @ (lam @ (X82 @ sh @ one)) @ id))) & ! [X86 : subst,X84 : subst,X85 : term] : (((sub @ (X82 @ X84 @ X85) @ X86)) = ((X82 @ (comp @ X84 @ X86) @ (sub @ X85 @ X86))))) | ? [X87 : term] : (($true = ((X78 @ X87))) & (((X78 @ (sub @ X79 @ (push @ X87 @ id)))) != $true)))) & (pushprop_lem2v2 = $true) & ((hoasinduction_no_psi_cond_lthm = $true) <=> (? [X447 : term,X446 : (term > $o)] : (! [X448 : term,X449 : term] : (($true != ((X446 @ X448))) | ($true = ((X446 @ (ap @ X449 @ X448)))) | ($true != ((X446 @ X449)))) & ! [X452 : term] : (($true = ((X446 @ X452))) | (((var @ X452)) != $true)) & ! [X450 : term] : (($true = ((X446 @ (lam @ X450)))) | ? [X451 : term] : (($true = ((X446 @ X451))) & ($true != ((X446 @ (sub @ X450 @ (push @ X451 @ id))))))) & (((X446 @ X447)) != $true)) | ! [X464 : term,X465 : (subst > term > subst > $o)] : (($true = ((X465 @ id @ X464 @ id))) | ? [X467 : term,X466 : term] : ((((X465 @ id @ (ap @ (sub @ X466 @ id) @ X467) @ id)) != $true) & (((X465 @ id @ X467 @ id)) = $true) & ($true = ((X465 @ id @ X466 @ id)))) | ? [X468 : (subst > term > term)] : (! [X471 : subst,X470 : subst,X472 : term] : (((X468 @ (comp @ X470 @ X471) @ (sub @ X472 @ X471))) = ((sub @ (X468 @ X470 @ X472) @ X471))) & ! [X469 : term] : ((((X465 @ id @ (X468 @ id @ X469) @ id)) = $true) | (((X465 @ id @ X469 @ id)) != $true)) & ($true != ((X465 @ id @ (lam @ (X468 @ sh @ one)) @ id))))) | ? [X443 : (subst > term > subst > $o)] : ! [X444 : (term > $o)] : ? [X445 : term] : (((X443 @ id @ X445 @ id)) != ((X444 @ X445))) | ? [X456 : term,X455 : (subst > term > subst > $o),X454 : (term > $o)] : (! [X459 : (subst > term > term)] : (($true = ((X455 @ id @ (lam @ (X459 @ sh @ one)) @ id))) | ? [X460 : term] : (($true = ((X455 @ id @ X460 @ id))) & ($true != ((X455 @ id @ (X459 @ id @ X460) @ id)))) | ? [X461 : subst,X463 : term,X462 : subst] : (((X459 @ (comp @ X462 @ X461) @ (sub @ X463 @ X461))) != ((sub @ (X459 @ X462 @ X463) @ X461)))) & ! [X458 : term] : (($true = ((X454 @ (sub @ X456 @ (push @ X458 @ id))))) | ($true != ((X454 @ X458)))) & ($true != ((X454 @ (lam @ X456)))) & ! [X457 : term] : (((X454 @ X457)) = ((X455 @ id @ X457 @ id)))) | ? [X453 : term] : (((sub @ X453 @ id)) != X453))) & (hoaslaminj_gthm = $true) & (pushprop_lthm_orig = $true) & (induction2_gthm = $true) & ((hoasinduction_lem3 = $true) <=> ! [X60 : (subst > term > subst > $o),X61 : term] : (? [X62 : (subst > term > term)] : ((((X60 @ id @ (lam @ (X62 @ sh @ one)) @ id)) != $true) & ! [X65 : subst,X64 : subst,X63 : term] : (((sub @ (X62 @ X64 @ X63) @ X65)) = ((X62 @ (comp @ X64 @ X65) @ (sub @ X63 @ X65)))) & ! [X66 : term] : (($true = ((X60 @ id @ (X62 @ id @ X66) @ id))) | ($true != ((X60 @ id @ X66 @ id))))) | ? [X73 : subst,X71 : subst,X74 : subst,X72 : term] : ((((X60 @ X73 @ X72 @ (comp @ X74 @ X71))) = $true) & ($true != ((X60 @ (comp @ X73 @ X74) @ (sub @ X72 @ X74) @ X71)))) | ? [X68 : subst,X69 : subst,X70 : subst,X67 : term] : (($true != ((X60 @ X68 @ X67 @ (comp @ X69 @ X70)))) & (((X60 @ (comp @ X68 @ X69) @ (sub @ X67 @ X69) @ X70)) = $true)) | ? [X75 : term] : ((((X60 @ id @ X75 @ id)) = $true) & (((X60 @ id @ (sub @ X61 @ (push @ X75 @ id)) @ id)) != $true)) | ($true = ((X60 @ id @ (lam @ X61) @ id))))) & ((hoasinduction_lem0_lthm = $true) <=> ! [X504 : (subst > term > subst > $o)] : ? [X505 : (term > $o)] : ! [X506 : term] : (((X505 @ X506)) = ((X504 @ id @ X506 @ id)))) & (hoasinduction_lem1 = $true) & ((? [X110 : term,X109 : subst] : (((comp @ sh @ (push @ X110 @ X109))) != X109) | ! [X111 : term,X112 : (term > $o),X113 : (term > $o),X115 : subst,X114 : term] : (($true != ((X112 @ X111))) | (((X113 @ (sub @ X111 @ (push @ X114 @ X115)))) = $true)) | ? [X107 : term,X108 : subst] : (((sub @ one @ (push @ X107 @ X108))) != X107)) <=> (pushprop_lem1_lthm = $true)) & (((d2subst @ d_id)) = ((push @ (d2term @ d_one) @ (d2subst @ d_id)))) & (ulamvarsh = $true) & ((shinj = $true) <=> ! [X296 : term,X295 : term] : ((((sub @ X295 @ sh)) != ((sub @ X296 @ sh))) | (X295 = X296))) & (pushprop_lem1_gthm = $true) & ((induction = $true) <=> ! [X524 : (term > $o),X523 : term] : (? [X525 : term] : (($true != ((X524 @ (lam @ X525)))) & ($true = ((X524 @ X525)))) | ? [X528 : term] : ((((X524 @ X528)) != $true) & (((var @ X528)) = $true)) | ? [X527 : term,X526 : term] : ((((X524 @ X526)) = $true) & ($true = ((X524 @ X527))) & ($true != ((X524 @ (ap @ X526 @ X527))))) | (((X524 @ X523)) = $true))) & ((axidr = $true) <=> ! [X8 : subst] : (((comp @ X8 @ id)) = X8)) & ! [X498 : subst] : ? [X499 : d_subst] : (((d2subst @ X499)) = X498) & (pushprop = $true) & (! [X18 : (subst > term > subst > $o),X17 : term] : (? [X26 : (subst > term > term)] : (! [X28 : subst,X29 : term,X27 : subst] : (((X26 @ (comp @ X27 @ X28) @ (sub @ X29 @ X28))) = ((sub @ (X26 @ X27 @ X29) @ X28))) & ! [X30 : term] : ((((X18 @ id @ (X26 @ id @ X30) @ id)) = $true) | ($true != ((X18 @ id @ X30 @ id)))) & ($true != ((X18 @ id @ (lam @ (X26 @ sh @ one)) @ id)))) | ? [X21 : term] : ((((X18 @ id @ X21 @ id)) != $true) & ($true = ((var @ (sub @ X21 @ id))))) | ($true = ((X18 @ id @ X17 @ id))) | ? [X20 : term,X19 : term] : (($true = ((X18 @ id @ X20 @ id))) & (((X18 @ id @ X19 @ id)) = $true) & (((X18 @ id @ (ap @ (sub @ X19 @ id) @ X20) @ id)) != $true)) | ? [X22 : subst,X23 : subst,X25 : term,X24 : subst] : (($true = ((X18 @ X22 @ X25 @ (comp @ X24 @ X23)))) & (((X18 @ (comp @ X22 @ X24) @ (sub @ X25 @ X24) @ X23)) != $true)) | ? [X31 : subst,X34 : subst,X33 : subst,X32 : term] : (($true != ((X18 @ X31 @ X32 @ (comp @ X33 @ X34)))) & ($true = ((X18 @ (comp @ X31 @ X33) @ (sub @ X32 @ X33) @ X34))))) <=> (hoasinduction = $true)) & ! [X398 : d_term,X397 : d_term] : ((X397 = X398) | (((d2term @ X398)) != ((d2term @ X397)))) & (hoasinduction_gthm = $true) & ((hoasinduction_lem3a = $true) <=> ! [X287 : (subst > term > subst > $o),X288 : term] : ((((X287 @ id @ (lam @ X288) @ id)) = $true) | ? [X289 : (subst > term > term)] : ((((X287 @ id @ (lam @ (X289 @ sh @ one)) @ id)) != $true) & ! [X290 : term] : ((((X287 @ id @ (X289 @ id @ X290) @ id)) = $true) | (((X287 @ id @ X290 @ id)) != $true)) & ! [X293 : term,X291 : subst,X292 : subst] : (((sub @ (X289 @ X292 @ X293) @ X291)) = ((X289 @ (comp @ X292 @ X291) @ (sub @ X293 @ X291))))) | ? [X294 : term] : (($true != ((X287 @ id @ (sub @ X288 @ (push @ X294 @ id)) @ id))) & (((X287 @ id @ X294 @ id)) = $true)))) & (axclos = $true) & (hoasinduction_lem2_gthm = $true) & (! [X11 : term,X10 : (term > $o)] : (? [X12 : term] : (($true != ((X10 @ X12))) & (((var @ X12)) = $true)) | ? [X13 : term,X14 : term] : ((((X10 @ X14)) = $true) & ($true != ((X10 @ (ap @ X14 @ X13)))) & (((X10 @ X13)) = $true)) | ($true = ((X10 @ X11))) | ? [X15 : term] : (! [X16 : term] : ((((X10 @ X16)) != $true) | ($true = ((X10 @ (sub @ X15 @ (push @ X16 @ id)))))) & (((X10 @ (lam @ X15))) != $true))) <=> (induction2 = $true)) & ((induction2lem_lthm = $true) <=> (? [X263 : subst,X264 : term] : (((sub @ one @ (push @ X264 @ X263))) != X264) | ! [X276 : term,X274 : (term > $o),X275 : subst] : (? [X279 : term,X280 : term] : ((((X274 @ (ap @ X280 @ X279))) != $true) & ($true = ((X274 @ X280))) & (((X274 @ X279)) = $true)) | ($true = ((X274 @ (sub @ X276 @ X275)))) | ? [X277 : term] : (! [X278 : term] : ((((X274 @ (sub @ X277 @ (push @ X278 @ id)))) = $true) | ($true != ((X274 @ X278)))) & (((X274 @ (lam @ X277))) != $true)) | ? [X281 : term] : (($true != ((X274 @ (sub @ X281 @ X275)))) & (((var @ X281)) = $true))) | ? [X269 : term,X268 : (term > $o)] : (! [X270 : term] : ((((X268 @ X270)) = $true) | (((var @ X270)) != $true)) & ! [X273 : term,X272 : term] : (($true != ((X268 @ X272))) | ($true = ((X268 @ (ap @ X272 @ X273)))) | ($true != ((X268 @ X273)))) & ! [X271 : term] : (($true = ((X268 @ (lam @ X271)))) | ($true != ((X268 @ X271)))) & (((X268 @ X269)) != $true)) | ? [X265 : term,X266 : subst] : (((comp @ sh @ (push @ X265 @ X266))) != X266) | ? [X267 : subst] : (((comp @ X267 @ id)) != X267))) & (! [X191 : term,X189 : subst,X190 : (term > $o)] : ? [X192 : (term > $o)] : ! [X193 : term] : (((X190 @ (sub @ X193 @ (push @ X191 @ X189)))) = ((X192 @ X193))) <=> (pushprop_lem0_lthm = $true)) & (hoasinduction_lem3b_gthm = $true) & (hoaslamnotvar_gthm = $true) & (! [X516 : term] : ? [X517 : (subst > term > term)] : ! [X519 : subst,X518 : term] : (((sub @ X516 @ (push @ X518 @ X519))) = ((X517 @ X519 @ X518))) <=> (hoasinduction_lem3v2_f = $true)) & ((hoasinduction_lthm_3 = $true) <=> (? [X153 : (term > $o),X154 : term] : (! [X159 : term] : (($true = ((X153 @ X159))) | ($true != ((var @ X159)))) & ($true != ((X153 @ X154))) & ! [X157 : term] : ((((X153 @ (lam @ X157))) = $true) | ? [X158 : term] : (($true = ((X153 @ X158))) & (((X153 @ (sub @ X157 @ (push @ X158 @ id)))) != $true))) & ! [X155 : term,X156 : term] : ((((X153 @ X155)) != $true) | ($true = ((X153 @ (ap @ X156 @ X155)))) | ($true != ((X153 @ X156))))) | ? [X150 : (subst > term > subst > $o)] : ! [X151 : (term > $o)] : ? [X152 : term] : (((X150 @ id @ X152 @ id)) != ((X151 @ X152))) | ! [X171 : term,X172 : (subst > term > subst > $o)] : (? [X178 : subst,X176 : subst,X177 : subst,X179 : term] : (($true != ((X172 @ (comp @ X178 @ X176) @ (sub @ X179 @ X176) @ X177))) & ($true = ((X172 @ X178 @ X179 @ (comp @ X176 @ X177))))) | ? [X184 : (subst > term > term)] : ((((X172 @ id @ (lam @ (X184 @ sh @ one)) @ id)) != $true) & ! [X185 : term] : ((((X172 @ id @ (X184 @ id @ X185) @ id)) = $true) | (((X172 @ id @ X185 @ id)) != $true)) & ! [X186 : term,X187 : subst,X188 : subst] : (((sub @ (X184 @ X188 @ X186) @ X187)) = ((X184 @ (comp @ X188 @ X187) @ (sub @ X186 @ X187))))) | ? [X173 : term] : (($true != ((X172 @ id @ X173 @ id))) & ($true = ((var @ (sub @ X173 @ id))))) | ($true = ((X172 @ id @ X171 @ id))) | ? [X175 : term,X174 : term] : ((((X172 @ id @ (ap @ (sub @ X174 @ id) @ X175) @ id)) != $true) & (((X172 @ id @ X174 @ id)) = $true) & ($true = ((X172 @ id @ X175 @ id)))) | ? [X181 : subst,X180 : term,X182 : subst,X183 : subst] : ((((X172 @ (comp @ X183 @ X181) @ (sub @ X180 @ X181) @ X182)) = $true) & ($true != ((X172 @ X183 @ X180 @ (comp @ X181 @ X182)))))) | ? [X160 : term] : (((sub @ X160 @ id)) != X160) | ? [X162 : term,X163 : (subst > term > subst > $o),X161 : (term > $o)] : (! [X170 : term] : (((X161 @ X170)) = ((X163 @ id @ X170 @ id))) & ! [X164 : (subst > term > term)] : (($true = ((X163 @ id @ (lam @ (X164 @ sh @ one)) @ id))) | ? [X167 : subst,X166 : subst,X165 : term] : (((sub @ (X164 @ X166 @ X165) @ X167)) != ((X164 @ (comp @ X166 @ X167) @ (sub @ X165 @ X167)))) | ? [X168 : term] : ((((X163 @ id @ X168 @ id)) = $true) & (((X163 @ id @ (X164 @ id @ X168) @ id)) != $true))) & (((X161 @ (lam @ X162))) != $true) & ! [X169 : term] : (($true != ((X161 @ X169))) | (((X161 @ (sub @ X162 @ (push @ X169 @ id)))) = $true))))) & (((d2term @ d_one)) = ((hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one)))) & ((pushprop_lem1v2_lthm = $true) <=> (! [X402 : subst,X401 : (term > $o),X404 : term,X403 : (term > $o)] : ((((X401 @ X404)) != $true) | ? [X405 : term] : (((X403 @ X405)) != ((X401 @ (sub @ X405 @ (push @ X404 @ X402))))) | ($true = ((X403 @ one)))) | ? [X400 : subst,X399 : term] : (((sub @ one @ (push @ X399 @ X400))) != X399))) & ! [X35 : d_subst] : (d_id = X35) & ((! [X515 : term,X512 : term,X514 : term,X513 : term] : ((((ap @ (sub @ X513 @ id) @ X514)) != ((ap @ (sub @ X515 @ id) @ X512))) | (X513 = X515)) | ? [X510 : term,X511 : term,X508 : term,X509 : term] : ((((ap @ X511 @ X509)) = ((ap @ X508 @ X510))) & (X508 != X511)) | ? [X507 : term] : (((sub @ X507 @ id)) != X507)) <=> (hoasapinj1_lthm = $true)) & (((d2term @ d_one)) = one) & (apnotvar = $true) & (axabs = $true) & ((pushprop_lem1v2 = $true) <=> ! [X284 : subst,X282 : (term > $o),X285 : term,X283 : (term > $o)] : (($true = ((X282 @ one))) | ? [X286 : term] : (((X282 @ X286)) != ((X283 @ (sub @ X286 @ (push @ X285 @ X284))))) | (((X283 @ X285)) != $true))) & (! [X494 : term,X493 : term,X492 : term,X495 : term] : ((((ap @ X492 @ X494)) != ((ap @ X493 @ X495))) | (X494 = X495)) <=> (apinj2 = $true)) & (hoasinduction_lem1v2_gthm = $true) & (! [X491 : term,X490 : term] : ((X490 = X491) | (((lam @ X490)) != ((lam @ X491)))) <=> (laminj = $true)) & (pushprop_lem2v2_gthm = $true) & (ulamvarind = $true) & ((hoaslamnotap = $true) <=> ! [X482 : (subst > term > term),X480 : term,X481 : term] : ((((ap @ (sub @ X481 @ id) @ X480)) != ((lam @ (X482 @ sh @ one)))) | ? [X485 : subst,X484 : subst,X483 : term] : (((sub @ (X482 @ X484 @ X483) @ X485)) != ((X482 @ (comp @ X484 @ X485) @ (sub @ X483 @ X485)))))) & (! [X369 : term] : ? [X370 : (subst > term > term)] : ! [X371 : subst,X372 : term] : (((X370 @ X371 @ X372)) = ((sub @ X369 @ (push @ X372 @ X371)))) <=> (hoasinduction_lem3v2_f_lthm = $true)) & (hoaslamnotvar_lthm = $true) & ((hoasinduction_lem3b_lthm = $true) <=> ! [X373 : term] : ? [X374 : (subst > term > term)] : (((sub @ X373 @ (push @ one @ sh))) = ((X374 @ sh @ one)))) & (! [X412 : (subst > term > subst > $o),X411 : term] : ((((X412 @ id @ (lam @ (sub @ X411 @ (push @ one @ sh))) @ id)) = $true) | ? [X413 : term] : ((((X412 @ id @ (sub @ X411 @ (push @ X413 @ id)) @ id)) != $true) & (((X412 @ id @ X413 @ id)) = $true)) | ? [X414 : term,X415 : (subst > term > term)] : ((((X412 @ id @ (lam @ (X415 @ sh @ one)) @ id)) != $true) & ! [X419 : subst,X417 : term,X418 : subst] : (((sub @ (X415 @ X419 @ X417) @ X418)) = ((sub @ (sub @ X414 @ (push @ X417 @ X419)) @ X418))) & ! [X422 : subst,X420 : term,X421 : subst] : (((sub @ X414 @ (push @ (sub @ X420 @ X421) @ (comp @ X422 @ X421)))) = ((X415 @ (comp @ X422 @ X421) @ (sub @ X420 @ X421)))) & ! [X416 : term] : (($true != ((X412 @ id @ X416 @ id))) | ($true = ((X412 @ id @ (X415 @ id @ X416) @ id)))))) <=> (hoasinduction_lem3aaa = $true)) & ((axshiftcons = $true) <=> ! [X396 : term,X395 : subst] : (((comp @ sh @ (push @ X396 @ X395))) = X395)) & (ulamvar1 != $true) & ((substmonoid = $true) <=> (! [X77 : subst] : (((comp @ X77 @ id)) = X77) & ! [X76 : subst] : (((comp @ id @ X76)) = X76))) & (hoasapinj2_gthm = $true) & ((! [X387 : (term > $o),X386 : term,X385 : (subst > term > subst > $o)] : (($true = ((X387 @ (lam @ X386)))) | ? [X390 : (subst > term > term)] : (! [X392 : subst,X391 : term,X393 : subst] : (((X390 @ (comp @ X393 @ X392) @ (sub @ X391 @ X392))) = ((sub @ (X390 @ X393 @ X391) @ X392))) & ($true != ((X385 @ id @ (lam @ (X390 @ sh @ one)) @ id))) & ! [X394 : term] : (($true = ((X385 @ id @ (X390 @ id @ X394) @ id))) | (((X385 @ id @ X394 @ id)) != $true))) | ? [X388 : term] : ((((X387 @ X388)) = $true) & (((X387 @ (sub @ X386 @ (push @ X388 @ id)))) != $true)) | ? [X389 : term] : (((X387 @ X389)) != ((X385 @ id @ X389 @ id)))) | ? [X384 : term] : (((sub @ X384 @ id)) != X384) | ? [X380 : term] : ! [X381 : (subst > term > term)] : ? [X382 : subst,X383 : term] : (((sub @ X380 @ (push @ X383 @ X382))) != ((X381 @ X382 @ X383)))) <=> (hoasinduction_lem3v2a_lthm = $true)) & (! [X331 : (subst > term > subst > $o),X330 : term] : ((((X331 @ id @ (lam @ (sub @ X330 @ (push @ one @ sh))) @ id)) = $true) | ? [X332 : (subst > term > term)] : (! [X336 : term,X334 : subst,X335 : subst] : (((X332 @ (comp @ X334 @ X335) @ (sub @ X336 @ X335))) = ((sub @ (X332 @ X334 @ X336) @ X335))) & ($true != ((X331 @ id @ (lam @ (X332 @ sh @ one)) @ id))) & ! [X333 : term] : (($true != ((X331 @ id @ X333 @ id))) | ($true = ((X331 @ id @ (X332 @ id @ X333) @ id))))) | ? [X337 : term] : (($true = ((X331 @ id @ X337 @ id))) & ($true != ((X331 @ id @ (sub @ X330 @ (push @ X337 @ id)) @ id))))) <=> (hoasinduction_lem3aa_lthm = $true)) & (! [X500 : term,X502 : term,X503 : term,X501 : term] : ((X502 = X503) | (((ap @ (sub @ X502 @ id) @ X501)) != ((ap @ (sub @ X503 @ id) @ X500)))) <=> (hoasapinj1 = $true)) & (hoasinduction_lem3a_gthm = $true) & (! [X54 : term,X52 : (term > $o),X53 : subst] : (? [X58 : term] : (! [X59 : term] : (($true != ((X52 @ X59))) | ($true = ((X52 @ (sub @ X58 @ (push @ X59 @ id)))))) & (((X52 @ (lam @ X58))) != $true)) | ? [X56 : term,X57 : term] : ((((X52 @ X56)) = $true) & ($true = ((X52 @ X57))) & ($true != ((X52 @ (ap @ X56 @ X57))))) | ? [X55 : term] : ((((X52 @ (sub @ X55 @ X53))) != $true) & ($true = ((var @ X55)))) | ($true = ((X52 @ (sub @ X54 @ X53))))) <=> (induction2lem = $true)) & (hoasinduction_lem2v2_gthm = $true) & (pushprop_lthm = $true) & (lamnotap != $true) & (((d2subst @ d_id)) = id) & (! [X406 : (term > $o),X408 : term,X409 : (term > $o),X407 : subst,X410 : term] : ((((X406 @ (sub @ X410 @ (push @ X408 @ X407)))) = $true) | ($true != ((X409 @ X410)))) <=> (pushprop_lem1 = $true)) & (((d2term @ d_one)) = ((ap @ (d2term @ d_one) @ (d2term @ d_one)))) & (axapp = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & ((hoasapinj2 = $true) <=> ! [X378 : term,X377 : term,X376 : term,X379 : term] : ((X377 = X379) | (((ap @ (sub @ X378 @ id) @ X379)) != ((ap @ (sub @ X376 @ id) @ X377))))) & (((d2subst @ d_id)) = sh) & (((d2term @ d_one)) = ((lam @ (d2term @ d_one)))) & (! [X497 : subst,X496 : term] : (((sub @ one @ (push @ X496 @ X497))) = X496) <=> (axvarcons = $true)) & (! [X338 : term] : ? [X339 : (subst > term > term)] : (((X339 @ sh @ one)) = ((sub @ X338 @ (push @ one @ sh)))) <=> (hoasinduction_lem3b = $true)) & ((? [X487 : subst] : (((comp @ X487 @ id)) != X487) | ? [X486 : subst] : (((comp @ id @ X486)) != X486) | (! [X489 : subst] : (((comp @ X489 @ id)) = X489) & ! [X488 : subst] : (((comp @ id @ X488)) = X488))) <=> (substmonoid_lthm = $true)) & (axassoc = $true) & (lamnotvar = $true) & (pushprop_lem3v2_lthm = $true) & (termmset_gthm = $true) & ((hoasapinj2_lthm = $true) <=> (? [X313 : term,X315 : term,X316 : term,X314 : term] : ((X315 != X316) & (((ap @ X313 @ X315)) = ((ap @ X314 @ X316)))) | ! [X320 : term,X317 : term,X319 : term,X318 : term] : ((((ap @ (sub @ X320 @ id) @ X318)) != ((ap @ (sub @ X317 @ id) @ X319))) | (X318 = X319)))) & (hoasapnotvar = $true) & ! [X474 : d_subst,X473 : d_subst] : ((X473 = X474) | (((d2subst @ X474)) != ((d2subst @ X473)))) & (hoasinduction_lem3_gthm = $true) & (pushprop_lem3v2 = $true) & (! [X117 : (term > $o),X118 : term,X116 : (subst > term > subst > $o)] : (? [X133 : term] : (((X116 @ id @ X133 @ id)) != ((X117 @ X133))) | ? [X125 : subst,X126 : subst,X128 : subst,X127 : term] : ((((X116 @ (comp @ X125 @ X128) @ (sub @ X127 @ X128) @ X126)) = $true) & ($true != ((X116 @ X125 @ X127 @ (comp @ X128 @ X126))))) | ? [X131 : subst,X132 : term,X129 : subst,X130 : subst] : ((((X116 @ (comp @ X129 @ X130) @ (sub @ X132 @ X130) @ X131)) != $true) & (((X116 @ X129 @ X132 @ (comp @ X130 @ X131))) = $true)) | ($true = ((X117 @ (lam @ X118)))) | ? [X124 : term] : (($true = ((X117 @ X124))) & (((X117 @ (sub @ X118 @ (push @ X124 @ id)))) != $true)) | ? [X119 : (subst > term > term)] : (! [X123 : term] : ((((X116 @ id @ X123 @ id)) != $true) | ($true = ((X116 @ id @ (X119 @ id @ X123) @ id)))) & ($true != ((X116 @ id @ (lam @ (X119 @ sh @ one)) @ id))) & ! [X122 : term,X120 : subst,X121 : subst] : (((X119 @ (comp @ X121 @ X120) @ (sub @ X122 @ X120))) = ((sub @ (X119 @ X121 @ X122) @ X120))))) <=> (hoasinduction_lem3v2 = $true)) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y1 @ Y2) = (Y0 @ id @ Y2 @ id)))))))) & (hoasinduction_lem3v2_gthm = $true) & (! [X0 : term,X1 : (subst > term > subst > $o)] : (? [X2 : (subst > term > term)] : ((((X1 @ id @ (lam @ (X2 @ sh @ one)) @ id)) != $true) & ! [X3 : subst,X5 : term,X4 : subst] : (((sub @ (X2 @ X3 @ X5) @ X4)) = ((X2 @ (comp @ X3 @ X4) @ (sub @ X5 @ X4)))) & ! [X6 : term] : ((((X1 @ id @ X6 @ id)) != $true) | (((X1 @ id @ (X2 @ id @ X6) @ id)) = $true))) | ? [X7 : term] : (($true = ((X1 @ id @ X7 @ id))) & (((X1 @ id @ (sub @ X0 @ (push @ X7 @ id)) @ id)) != $true)) | ($true = ((X1 @ id @ (lam @ (sub @ X0 @ (push @ one @ sh))) @ id)))) <=> (hoasinduction_lem3aa = $true)) & ! [X149 : d_term] : (d_one = X149) & (hoasinduction_lem1v2 = $true) & ((! [X91 : (subst > term > subst > $o),X89 : term,X90 : (term > $o)] : (? [X106 : subst,X103 : subst,X105 : subst,X104 : term] : (($true != ((X91 @ X106 @ X104 @ (comp @ X103 @ X105)))) & ($true = ((X91 @ (comp @ X106 @ X103) @ (sub @ X104 @ X103) @ X105)))) | ? [X101 : subst,X99 : subst,X102 : term,X100 : subst] : (($true = ((X91 @ X99 @ X102 @ (comp @ X101 @ X100)))) & ($true != ((X91 @ (comp @ X99 @ X101) @ (sub @ X102 @ X101) @ X100)))) | (((X90 @ (lam @ X89))) = $true) | ? [X97 : term] : (((X91 @ id @ X97 @ id)) != ((X90 @ X97))) | ? [X92 : (subst > term > term)] : (! [X96 : term] : ((((X91 @ id @ X96 @ id)) != $true) | ($true = ((X91 @ id @ (X92 @ id @ X96) @ id)))) & ! [X95 : subst,X94 : term,X93 : subst] : (((sub @ (X92 @ X95 @ X94) @ X93)) = ((X92 @ (comp @ X95 @ X93) @ (sub @ X94 @ X93)))) & (((X91 @ id @ (lam @ (X92 @ sh @ one)) @ id)) != $true)) | ? [X98 : term] : (($true != ((X90 @ (sub @ X89 @ (push @ X98 @ id))))) & ($true = ((X90 @ X98))))) | ? [X88 : term] : (((sub @ X88 @ id)) != X88)) <=> (hoasinduction_lem3v2_lthm = $true)) & ((axidl = $true) <=> ! [X9 : subst] : (((comp @ id @ X9)) = X9)) & (hoasapnotvar_lthm = $true) & (hoasinduction_lem2_lthm = $true) & (! [X475 : term,X477 : subst,X476 : (term > $o)] : ? [X478 : (term > $o)] : ! [X479 : term] : (((X476 @ (sub @ X479 @ (push @ X475 @ X477)))) = ((X478 @ X479))) <=> (pushprop_lem0 = $true))),
  inference(flattening,[],[f10])).
thf(f12,plain,(
  ! [X1 : (subst > term > subst > $o),X0 : (term > $o)] : ((((! [X12 : term,X13 : term] : ((($true = ((X0 @ (ap @ X13 @ X12)))) | ($true != ((X0 @ X12)))) | ($true != ((X0 @ X13)))) | ($true != ((hoasinduction_p_and_p_prime @ X1 @ X0)))) | ? [X10 : term,X11 : term] : (((((X1 @ id @ (hoasap @ id @ X10 @ id @ X11) @ id)) != $true) & ($true = ((X1 @ id @ X11 @ id)))) & ($true = ((X1 @ id @ X10 @ id))))) | ? [X9 : term,X8 : subst,X6 : subst,X7 : subst] : (($true = ((X1 @ (comp @ X8 @ X6) @ (sub @ X9 @ X6) @ X7))) & (((X1 @ X8 @ X9 @ (comp @ X6 @ X7))) != $true))) | ? [X5 : subst,X2 : subst,X4 : subst,X3 : term] : (($true = ((X1 @ X4 @ X3 @ (comp @ X5 @ X2)))) & ($true != ((X1 @ (comp @ X4 @ X5) @ (sub @ X3 @ X5) @ X2))))) <~> (hoasinduction_lem2v2 = $true)),
  inference(ennf_transformation,[],[f5])).
thf(f13,plain,(
  (hoasinduction_lem2v2 = $true) <~> ! [X1 : (subst > term > subst > $o),X0 : (term > $o)] : (? [X5 : subst,X2 : subst,X4 : subst,X3 : term] : (($true = ((X1 @ X4 @ X3 @ (comp @ X5 @ X2)))) & ($true != ((X1 @ (comp @ X4 @ X5) @ (sub @ X3 @ X5) @ X2)))) | ? [X9 : term,X8 : subst,X6 : subst,X7 : subst] : (($true = ((X1 @ (comp @ X8 @ X6) @ (sub @ X9 @ X6) @ X7))) & (((X1 @ X8 @ X9 @ (comp @ X6 @ X7))) != $true)) | ($true != ((hoasinduction_p_and_p_prime @ X1 @ X0))) | ? [X10 : term,X11 : term] : (($true = ((X1 @ id @ X11 @ id))) & (((X1 @ id @ (hoasap @ id @ X10 @ id @ X11) @ id)) != $true) & ($true = ((X1 @ id @ X10 @ id)))) | ! [X12 : term,X13 : term] : (($true != ((X0 @ X12))) | ($true = ((X0 @ (ap @ X13 @ X12)))) | ($true != ((X0 @ X13)))))),
  inference(flattening,[],[f12])).
thf(f14,definition,(
  ! [X172 : (subst > term > subst > $o)] : (($true = ((sP0 @ X172))) <=> ? [X175 : term,X174 : term] : ((((X172 @ id @ (ap @ (sub @ X174 @ id) @ X175) @ id)) != $true) & (((X172 @ id @ X174 @ id)) = $true) & ($true = ((X172 @ id @ X175 @ id)))))),
  introduced(definition,[new_symbols(definition,[=])],[predicate_definition_introduction])).
thf(f15,definition,(
  (sP1 = $true) <=> ! [X171 : term,X172 : (subst > term > subst > $o)] : (? [X178 : subst,X176 : subst,X177 : subst,X179 : term] : (($true != ((X172 @ (comp @ X178 @ X176) @ (sub @ X179 @ X176) @ X177))) & ($true = ((X172 @ X178 @ X179 @ (comp @ X176 @ X177))))) | ? [X184 : (subst > term > term)] : ((((X172 @ id @ (lam @ (X184 @ sh @ one)) @ id)) != $true) & ! [X185 : term] : ((((X172 @ id @ (X184 @ id @ X185) @ id)) = $true) | (((X172 @ id @ X185 @ id)) != $true)) & ! [X186 : term,X187 : subst,X188 : subst] : (((sub @ (X184 @ X188 @ X186) @ X187)) = ((X184 @ (comp @ X188 @ X187) @ (sub @ X186 @ X187))))) | ? [X173 : term] : (($true != ((X172 @ id @ X173 @ id))) & ($true = ((var @ (sub @ X173 @ id))))) | ($true = ((X172 @ id @ X171 @ id))) | ($true = ((sP0 @ X172))) | ? [X181 : subst,X180 : term,X182 : subst,X183 : subst] : ((((X172 @ (comp @ X183 @ X181) @ (sub @ X180 @ X181) @ X182)) = $true) & ($true != ((X172 @ X183 @ X180 @ (comp @ X181 @ X182))))))),
  introduced(definition,[new_symbols(definition,[=])],[predicate_definition_introduction])).
thf(f16,definition,(
  ($true = sP2) <=> (? [X263 : subst,X264 : term] : (((sub @ one @ (push @ X264 @ X263))) != X264) | ! [X276 : term,X274 : (term > $o),X275 : subst] : (? [X279 : term,X280 : term] : ((((X274 @ (ap @ X280 @ X279))) != $true) & ($true = ((X274 @ X280))) & (((X274 @ X279)) = $true)) | ($true = ((X274 @ (sub @ X276 @ X275)))) | ? [X277 : term] : (! [X278 : term] : ((((X274 @ (sub @ X277 @ (push @ X278 @ id)))) = $true) | ($true != ((X274 @ X278)))) & (((X274 @ (lam @ X277))) != $true)) | ? [X281 : term] : (($true != ((X274 @ (sub @ X281 @ X275)))) & (((var @ X281)) = $true))) | ? [X269 : term,X268 : (term > $o)] : (! [X270 : term] : ((((X268 @ X270)) = $true) | (((var @ X270)) != $true)) & ! [X273 : term,X272 : term] : (($true != ((X268 @ X272))) | ($true = ((X268 @ (ap @ X272 @ X273)))) | ($true != ((X268 @ X273)))) & ! [X271 : term] : (($true = ((X268 @ (lam @ X271)))) | ($true != ((X268 @ X271)))) & (((X268 @ X269)) != $true)) | ? [X265 : term,X266 : subst] : (((comp @ sh @ (push @ X265 @ X266))) != X266) | ? [X267 : subst] : (((comp @ X267 @ id)) != X267))),
  introduced(definition,[new_symbols(definition,[=])],[predicate_definition_introduction])).
thf(f17,definition,(
  ! [X18 : (subst > term > subst > $o)] : (($true = ((sP3 @ X18))) <=> ? [X20 : term,X19 : term] : (($true = ((X18 @ id @ X20 @ id))) & (((X18 @ id @ X19 @ id)) = $true) & (((X18 @ id @ (ap @ (sub @ X19 @ id) @ X20) @ id)) != $true)))),
  introduced(definition,[new_symbols(definition,[=])],[predicate_definition_introduction])).
thf(f18,definition,(
  ($true = sP4) <=> ! [X464 : term,X465 : (subst > term > subst > $o)] : (($true = ((X465 @ id @ X464 @ id))) | ? [X467 : term,X466 : term] : ((((X465 @ id @ (ap @ (sub @ X466 @ id) @ X467) @ id)) != $true) & (((X465 @ id @ X467 @ id)) = $true) & ($true = ((X465 @ id @ X466 @ id)))) | ? [X468 : (subst > term > term)] : (! [X471 : subst,X470 : subst,X472 : term] : (((X468 @ (comp @ X470 @ X471) @ (sub @ X472 @ X471))) = ((sub @ (X468 @ X470 @ X472) @ X471))) & ! [X469 : term] : ((((X465 @ id @ (X468 @ id @ X469) @ id)) = $true) | (((X465 @ id @ X469 @ id)) != $true)) & ($true != ((X465 @ id @ (lam @ (X468 @ sh @ one)) @ id)))))),
  introduced(definition,[new_symbols(definition,[=])],[predicate_definition_introduction])).
thf(f19,definition,(
  ($true = sP5) <=> (? [X36 : term] : (((sub @ X36 @ id)) != X36) | ! [X46 : (term > $o),X45 : term] : (? [X47 : term] : (($true = ((var @ X47))) & (((X46 @ X47)) != $true)) | ($true = ((X46 @ X45))) | ? [X48 : term,X49 : term] : (($true = ((X46 @ X48))) & ($true != ((X46 @ (ap @ X49 @ X48)))) & ($true = ((X46 @ X49)))) | ? [X50 : term] : (! [X51 : term] : (($true != ((X46 @ X51))) | ($true = ((X46 @ (sub @ X50 @ (push @ X51 @ id)))))) & (((X46 @ (lam @ X50))) != $true))) | ? [X39 : term,X38 : (term > $o),X37 : subst] : (! [X43 : term,X42 : term] : ((((X38 @ X43)) != $true) | ($true = ((X38 @ (ap @ X42 @ X43)))) | (((X38 @ X42)) != $true)) & ! [X40 : term] : (($true = ((X38 @ (lam @ X40)))) | ? [X41 : term] : (($true != ((X38 @ (sub @ X40 @ (push @ X41 @ id))))) & ($true = ((X38 @ X41))))) & ($true != ((X38 @ (sub @ X39 @ X37)))) & ! [X44 : term] : (($true = ((X38 @ (sub @ X44 @ X37)))) | ($true != ((var @ X44))))))),
  introduced(definition,[new_symbols(definition,[=])],[predicate_definition_introduction])).
thf(f20,definition,(
  ! [X232 : (subst > term > subst > $o)] : (($true = ((sP6 @ X232))) <=> ? [X239 : term,X238 : term] : (($true != ((X232 @ id @ (ap @ (sub @ X239 @ id) @ X238) @ id))) & (((X232 @ id @ X239 @ id)) = $true) & (((X232 @ id @ X238 @ id)) = $true)))),
  introduced(definition,[new_symbols(definition,[=])],[predicate_definition_introduction])).
thf(f21,definition,(
  ($true = sP7) <=> ! [X232 : (subst > term > subst > $o),X233 : term] : (? [X244 : term] : (($true != ((X232 @ id @ X244 @ id))) & ($true = ((var @ (sub @ X244 @ id))))) | ? [X235 : subst,X237 : subst,X236 : subst,X234 : term] : (($true != ((X232 @ X236 @ X234 @ (comp @ X237 @ X235)))) & (((X232 @ (comp @ X236 @ X237) @ (sub @ X234 @ X237) @ X235)) = $true)) | ? [X242 : subst,X240 : subst,X241 : subst,X243 : term] : ((((X232 @ X241 @ X243 @ (comp @ X242 @ X240))) = $true) & ($true != ((X232 @ (comp @ X241 @ X242) @ (sub @ X243 @ X242) @ X240)))) | ($true = ((X232 @ id @ X233 @ id))) | ? [X245 : (subst > term > term)] : (! [X249 : term] : (($true = ((X232 @ id @ (X245 @ id @ X249) @ id))) | (((X232 @ id @ X249 @ id)) != $true)) & ! [X248 : term,X247 : subst,X246 : subst] : (((sub @ (X245 @ X246 @ X248) @ X247)) = ((X245 @ (comp @ X246 @ X247) @ (sub @ X248 @ X247)))) & (((X232 @ id @ (lam @ (X245 @ sh @ one)) @ id)) != $true)) | ($true = ((sP6 @ X232))))),
  introduced(definition,[new_symbols(definition,[=])],[predicate_definition_introduction])).
thf(f22,definition,(
  (sP8 = $true) <=> ? [X217 : (subst > term > subst > $o),X216 : term] : (! [X218 : term] : (($true != ((X217 @ id @ X218 @ id))) | (((X217 @ id @ (sub @ X216 @ (push @ X218 @ id)) @ id)) = $true)) & ! [X227 : (subst > term > term)] : (? [X231 : term] : (($true != ((X217 @ id @ (X227 @ id @ X231) @ id))) & (((X217 @ id @ X231 @ id)) = $true)) | (((X217 @ id @ (lam @ (X227 @ sh @ one)) @ id)) = $true) | ? [X228 : term,X229 : subst,X230 : subst] : (((sub @ (X227 @ X230 @ X228) @ X229)) != ((X227 @ (comp @ X230 @ X229) @ (sub @ X228 @ X229))))) & ! [X226 : subst,X225 : subst,X223 : term,X224 : subst] : (($true != ((X217 @ X226 @ X223 @ (comp @ X224 @ X225)))) | ($true = ((X217 @ (comp @ X226 @ X224) @ (sub @ X223 @ X224) @ X225)))) & ($true != ((X217 @ id @ (lam @ X216) @ id))) & ! [X220 : subst,X221 : subst,X222 : subst,X219 : term] : (($true != ((X217 @ (comp @ X220 @ X222) @ (sub @ X219 @ X222) @ X221))) | (((X217 @ X220 @ X219 @ (comp @ X222 @ X221))) = $true)))),
  introduced(definition,[new_symbols(definition,[=])],[predicate_definition_introduction])).
thf(f23,definition,(
  ($true = sP9) <=> ! [X353 : (subst > term > subst > $o),X354 : term] : (? [X363 : subst,X364 : subst,X362 : subst,X361 : term] : (($true != ((X353 @ X363 @ X361 @ (comp @ X364 @ X362)))) & (((X353 @ (comp @ X363 @ X364) @ (sub @ X361 @ X364) @ X362)) = $true)) | ? [X367 : term,X366 : subst,X365 : subst,X368 : subst] : (($true = ((X353 @ X366 @ X367 @ (comp @ X365 @ X368)))) & (((X353 @ (comp @ X366 @ X365) @ (sub @ X367 @ X365) @ X368)) != $true)) | ? [X355 : term] : (($true != ((X353 @ id @ (sub @ X354 @ (push @ X355 @ id)) @ id))) & ($true = ((X353 @ id @ X355 @ id)))) | ? [X356 : (subst > term > term)] : (! [X357 : term] : (($true != ((X353 @ id @ X357 @ id))) | ($true = ((X353 @ id @ (X356 @ id @ X357) @ id)))) & (((X353 @ id @ (lam @ (X356 @ sh @ one)) @ id)) != $true) & ! [X359 : subst,X358 : subst,X360 : term] : (((sub @ (X356 @ X358 @ X360) @ X359)) = ((X356 @ (comp @ X358 @ X359) @ (sub @ X360 @ X359))))) | (((X353 @ id @ (lam @ X354) @ id)) = $true))),
  introduced(definition,[new_symbols(definition,[=])],[predicate_definition_introduction])).
thf(f24,plain,(
  (pushprop_gthm = $true) & ((? [X344 : term] : (((sub @ X344 @ id)) != X344) | ? [X345 : term,X346 : (subst > term > subst > $o)] : ((((X346 @ id @ (lam @ (sub @ X345 @ (push @ one @ sh))) @ id)) != $true) & ! [X348 : (subst > term > term)] : (? [X349 : term] : (($true != ((X346 @ id @ (X348 @ id @ X349) @ id))) & ($true = ((X346 @ id @ X349 @ id)))) | ? [X351 : subst,X350 : term,X352 : subst] : (((sub @ (X348 @ X352 @ X350) @ X351)) != ((X348 @ (comp @ X352 @ X351) @ (sub @ X350 @ X351)))) | ($true = ((X346 @ id @ (lam @ (X348 @ sh @ one)) @ id)))) & ! [X347 : term] : (($true != ((X346 @ id @ X347 @ id))) | ($true = ((X346 @ id @ (sub @ X345 @ (push @ X347 @ id)) @ id))))) | ($true = sP9)) <=> (hoasinduction_lem3_lthm = $true)) & (! [X520 : (subst > term > subst > $o)] : ? [X521 : (term > $o)] : ! [X522 : term] : (((X521 @ X522)) = ((X520 @ id @ X522 @ id))) <=> (hoasinduction_lem0 = $true)) & ((hoaslaminj_lthm = $true) <=> (! [X304 : subst,X306 : (subst > term > term),X303 : (subst > term > term),X305 : term] : (? [X308 : subst,X309 : subst,X307 : term] : (((sub @ (X303 @ X308 @ X307) @ X309)) != ((X303 @ (comp @ X308 @ X309) @ (sub @ X307 @ X309)))) | (((X306 @ X304 @ X305)) = ((X303 @ X304 @ X305))) | (((lam @ (X303 @ sh @ one))) != ((lam @ (X306 @ sh @ one)))) | ? [X310 : subst,X311 : term,X312 : subst] : (((sub @ (X306 @ X310 @ X311) @ X312)) != ((X306 @ (comp @ X310 @ X312) @ (sub @ X311 @ X312))))) | ? [X301 : term,X302 : term] : ((((lam @ X302)) = ((lam @ X301))) & (X301 != X302)) | ? [X300 : subst,X299 : term] : (((comp @ sh @ (push @ X299 @ X300))) != X300) | ? [X298 : term,X297 : subst] : (((sub @ one @ (push @ X298 @ X297))) != X298))) & (((d2term @ d_one)) = ((sub @ (d2term @ d_one) @ (d2subst @ d_id)))) & (hoaslamnotap_gthm = $true) & (pushprop_lem2v2_lthm = $true) & (! [X529 : subst,X530 : (subst > term > term),X532 : term,X531 : (subst > term > term)] : (? [X535 : subst,X534 : term,X533 : subst] : (((X531 @ (comp @ X535 @ X533) @ (sub @ X534 @ X533))) != ((sub @ (X531 @ X535 @ X534) @ X533))) | ? [X536 : term,X538 : subst,X537 : subst] : (((X530 @ (comp @ X537 @ X538) @ (sub @ X536 @ X538))) != ((sub @ (X530 @ X537 @ X536) @ X538))) | (((X530 @ X529 @ X532)) = ((X531 @ X529 @ X532))) | (((lam @ (X530 @ sh @ one))) != ((lam @ (X531 @ sh @ one))))) <=> (hoaslaminj = $true)) & ! [X441 : term] : ? [X442 : d_term] : (((d2term @ X442)) = X441) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & ((hoasinduction_no_psi_cond = $true) <=> ! [X322 : (subst > term > subst > $o),X321 : term] : (($true = ((X322 @ id @ X321 @ id))) | ? [X324 : term,X323 : term] : ((((X322 @ id @ X324 @ id)) = $true) & ($true = ((X322 @ id @ X323 @ id))) & ($true != ((X322 @ id @ (ap @ (sub @ X323 @ id) @ X324) @ id)))) | ? [X325 : (subst > term > term)] : (! [X326 : term] : ((((X322 @ id @ X326 @ id)) != $true) | (((X322 @ id @ (X325 @ id @ X326) @ id)) = $true)) & ! [X329 : subst,X327 : subst,X328 : term] : (((sub @ (X325 @ X329 @ X328) @ X327)) = ((X325 @ (comp @ X329 @ X327) @ (sub @ X328 @ X327)))) & (((X322 @ id @ (lam @ (X325 @ sh @ one)) @ id)) != $true)))) & (hoasapinj1_gthm = $true) & (hoaslamnotvar = $true) & ((axscons = $true) <=> ! [X375 : subst] : (((push @ (sub @ one @ X375) @ (comp @ sh @ X375))) = X375)) & (hoasinduction_lem1_lthm = $true) & (hoaslamnotap_lthm = $true) & (! [X539 : term] : (((sub @ X539 @ id)) = X539) <=> (termmset = $true)) & (((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id))) != $true) & (induction2lem_gthm = $true) & ((termmset_lthm = $true) <=> (? [X194 : term] : (((sub @ X194 @ id)) != X194) | ! [X195 : term] : (((sub @ X195 @ id)) = X195))) & ((hoasinduction_lem2 = $true) <=> ! [X250 : (subst > term > subst > $o),X252 : term,X251 : term] : (? [X254 : term,X253 : term] : ((((X250 @ id @ (ap @ (sub @ X254 @ id) @ X253) @ id)) != $true) & ($true = ((X250 @ id @ X253 @ id))) & (((X250 @ id @ X254 @ id)) = $true)) | ($true != ((X250 @ id @ X252 @ id))) | ? [X257 : subst,X258 : subst,X255 : term,X256 : subst] : (($true != ((X250 @ (comp @ X258 @ X257) @ (sub @ X255 @ X257) @ X256))) & ($true = ((X250 @ X258 @ X255 @ (comp @ X257 @ X256))))) | ? [X262 : subst,X260 : subst,X259 : term,X261 : subst] : (($true != ((X250 @ X261 @ X259 @ (comp @ X262 @ X260)))) & ($true = ((X250 @ (comp @ X261 @ X262) @ (sub @ X259 @ X262) @ X260)))) | ($true = ((X250 @ id @ (ap @ X251 @ X252) @ id))) | (((X250 @ id @ X251 @ id)) != $true))) & ((hoasinduction_lthm = $true) <=> (? [X196 : term,X197 : (term > $o)] : (($true != ((X197 @ X196))) & ! [X200 : term,X199 : term] : (($true = ((X197 @ (ap @ X200 @ X199)))) | ($true != ((X197 @ X199))) | (((X197 @ X200)) != $true)) & ! [X198 : term] : (($true = ((X197 @ X198))) | (((var @ X198)) != $true)) & ! [X201 : term] : (? [X202 : term] : (($true != ((X197 @ (sub @ X201 @ (push @ X202 @ id))))) & ($true = ((X197 @ X202)))) | (((X197 @ (lam @ X201))) = $true))) | ? [X203 : term,X204 : term,X205 : (subst > term > subst > $o)] : (! [X214 : subst,X215 : term,X213 : subst,X212 : subst] : (($true != ((X205 @ (comp @ X213 @ X214) @ (sub @ X215 @ X214) @ X212))) | ($true = ((X205 @ X213 @ X215 @ (comp @ X214 @ X212))))) & ! [X211 : term,X210 : term] : ((((X205 @ id @ X211 @ id)) != $true) | ($true != ((X205 @ id @ X210 @ id))) | ($true = ((X205 @ id @ (ap @ (sub @ X210 @ id) @ X211) @ id)))) & ! [X209 : subst,X207 : subst,X208 : term,X206 : subst] : ((((X205 @ (comp @ X207 @ X209) @ (sub @ X208 @ X209) @ X206)) = $true) | (((X205 @ X207 @ X208 @ (comp @ X209 @ X206))) != $true)) & (((X205 @ id @ X204 @ id)) = $true) & ($true != ((X205 @ id @ (ap @ X204 @ X203) @ id))) & (((X205 @ id @ X203 @ id)) = $true)) | (sP8 = $true) | ($true = sP7))) & (pushprop_lem1v2_gthm = $true) & (((d2subst @ d_id)) = ((comp @ (d2subst @ d_id) @ (d2subst @ d_id)))) & (hoasinduction_lem1_gthm = $true) & (! [X342 : term,X340 : term,X343 : term,X341 : term] : ((X341 = X342) | (((ap @ X342 @ X340)) != ((ap @ X341 @ X343)))) <=> (apinj1 = $true)) & (hoasapnotvar_gthm = $true) & (axmap = $true) & (($true = sP5) <=> (induction2_lthm = $true)) & (substmonoid_gthm = $true) & (axvarshift = $true) & (pushprop_lem0_gthm = $true) & (! [X135 : term,X137 : (term > $o),X134 : term,X136 : (subst > term > subst > $o)] : ((((X137 @ (ap @ X135 @ X134))) = $true) | (((X137 @ X135)) != $true) | ? [X147 : term,X148 : term] : (($true = ((X136 @ id @ X148 @ id))) & ($true = ((X136 @ id @ X147 @ id))) & ($true != ((X136 @ id @ (ap @ (sub @ X148 @ id) @ X147) @ id)))) | ? [X143 : term,X144 : subst,X145 : subst,X142 : subst] : (($true = ((X136 @ (comp @ X142 @ X145) @ (sub @ X143 @ X145) @ X144))) & ($true != ((X136 @ X142 @ X143 @ (comp @ X145 @ X144))))) | ($true != ((X137 @ X134))) | ? [X141 : subst,X138 : term,X140 : subst,X139 : subst] : (($true != ((X136 @ (comp @ X140 @ X141) @ (sub @ X138 @ X141) @ X139))) & (((X136 @ X140 @ X138 @ (comp @ X141 @ X139))) = $true)) | ? [X146 : term] : (((X136 @ id @ X146 @ id)) != ((X137 @ X146)))) <=> (hoasinduction_lem2v2 = $true)) & (((var @ (d2term @ d_one))) != $true) & (! [X440 : term] : (((sub @ X440 @ id)) = X440) <=> (axvarid = $true)) & ((? [X423 : term] : (((sub @ X423 @ id)) != X423) | ! [X432 : term,X433 : (subst > term > subst > $o)] : (? [X439 : term] : (($true = ((X433 @ id @ X439 @ id))) & (((X433 @ id @ (sub @ X432 @ (push @ X439 @ id)) @ id)) != $true)) | ? [X434 : (subst > term > term)] : (($true != ((X433 @ id @ (lam @ (X434 @ sh @ one)) @ id))) & ! [X437 : subst,X436 : subst,X435 : term] : (((X434 @ (comp @ X436 @ X437) @ (sub @ X435 @ X437))) = ((sub @ (X434 @ X436 @ X435) @ X437))) & ! [X438 : term] : (($true = ((X433 @ id @ (X434 @ id @ X438) @ id))) | (((X433 @ id @ X438 @ id)) != $true))) | (((X433 @ id @ (lam @ X432) @ id)) = $true)) | ? [X424 : term,X425 : (subst > term > subst > $o)] : (! [X426 : (subst > term > term)] : (? [X430 : term] : (($true != ((X425 @ id @ (X426 @ id @ X430) @ id))) & ($true = ((X425 @ id @ X430 @ id)))) | ($true = ((X425 @ id @ (lam @ (X426 @ sh @ one)) @ id))) | ? [X427 : subst,X428 : term,X429 : subst] : (((X426 @ (comp @ X427 @ X429) @ (sub @ X428 @ X429))) != ((sub @ (X426 @ X427 @ X428) @ X429)))) & ($true != ((X425 @ id @ (lam @ (sub @ X424 @ (push @ one @ sh))) @ id))) & ! [X431 : term] : (($true != ((X425 @ id @ X431 @ id))) | (((X425 @ id @ (sub @ X424 @ (push @ X431 @ id)) @ id)) = $true)))) <=> (hoasinduction_lem3a_lthm = $true)) & ((hoasinduction_lem3v2a = $true) <=> ! [X80 : (subst > term > subst > $o),X78 : (term > $o),X79 : term] : (? [X81 : term] : (((X78 @ X81)) != ((X80 @ id @ X81 @ id))) | ($true = ((X78 @ (lam @ X79)))) | ? [X82 : (subst > term > term)] : (! [X83 : term] : ((((X80 @ id @ (X82 @ id @ X83) @ id)) = $true) | (((X80 @ id @ X83 @ id)) != $true)) & ($true != ((X80 @ id @ (lam @ (X82 @ sh @ one)) @ id))) & ! [X86 : subst,X84 : subst,X85 : term] : (((sub @ (X82 @ X84 @ X85) @ X86)) = ((X82 @ (comp @ X84 @ X86) @ (sub @ X85 @ X86))))) | ? [X87 : term] : (($true = ((X78 @ X87))) & (((X78 @ (sub @ X79 @ (push @ X87 @ id)))) != $true)))) & (pushprop_lem2v2 = $true) & ((hoasinduction_no_psi_cond_lthm = $true) <=> (? [X447 : term,X446 : (term > $o)] : (! [X448 : term,X449 : term] : (($true != ((X446 @ X448))) | ($true = ((X446 @ (ap @ X449 @ X448)))) | ($true != ((X446 @ X449)))) & ! [X452 : term] : (($true = ((X446 @ X452))) | (((var @ X452)) != $true)) & ! [X450 : term] : (($true = ((X446 @ (lam @ X450)))) | ? [X451 : term] : (($true = ((X446 @ X451))) & ($true != ((X446 @ (sub @ X450 @ (push @ X451 @ id))))))) & (((X446 @ X447)) != $true)) | ($true = sP4) | ? [X443 : (subst > term > subst > $o)] : ! [X444 : (term > $o)] : ? [X445 : term] : (((X443 @ id @ X445 @ id)) != ((X444 @ X445))) | ? [X456 : term,X455 : (subst > term > subst > $o),X454 : (term > $o)] : (! [X459 : (subst > term > term)] : (($true = ((X455 @ id @ (lam @ (X459 @ sh @ one)) @ id))) | ? [X460 : term] : (($true = ((X455 @ id @ X460 @ id))) & ($true != ((X455 @ id @ (X459 @ id @ X460) @ id)))) | ? [X461 : subst,X463 : term,X462 : subst] : (((X459 @ (comp @ X462 @ X461) @ (sub @ X463 @ X461))) != ((sub @ (X459 @ X462 @ X463) @ X461)))) & ! [X458 : term] : (($true = ((X454 @ (sub @ X456 @ (push @ X458 @ id))))) | ($true != ((X454 @ X458)))) & ($true != ((X454 @ (lam @ X456)))) & ! [X457 : term] : (((X454 @ X457)) = ((X455 @ id @ X457 @ id)))) | ? [X453 : term] : (((sub @ X453 @ id)) != X453))) & (hoaslaminj_gthm = $true) & (pushprop_lthm_orig = $true) & (induction2_gthm = $true) & ((hoasinduction_lem3 = $true) <=> ! [X60 : (subst > term > subst > $o),X61 : term] : (? [X62 : (subst > term > term)] : ((((X60 @ id @ (lam @ (X62 @ sh @ one)) @ id)) != $true) & ! [X65 : subst,X64 : subst,X63 : term] : (((sub @ (X62 @ X64 @ X63) @ X65)) = ((X62 @ (comp @ X64 @ X65) @ (sub @ X63 @ X65)))) & ! [X66 : term] : (($true = ((X60 @ id @ (X62 @ id @ X66) @ id))) | ($true != ((X60 @ id @ X66 @ id))))) | ? [X73 : subst,X71 : subst,X74 : subst,X72 : term] : ((((X60 @ X73 @ X72 @ (comp @ X74 @ X71))) = $true) & ($true != ((X60 @ (comp @ X73 @ X74) @ (sub @ X72 @ X74) @ X71)))) | ? [X68 : subst,X69 : subst,X70 : subst,X67 : term] : (($true != ((X60 @ X68 @ X67 @ (comp @ X69 @ X70)))) & (((X60 @ (comp @ X68 @ X69) @ (sub @ X67 @ X69) @ X70)) = $true)) | ? [X75 : term] : ((((X60 @ id @ X75 @ id)) = $true) & (((X60 @ id @ (sub @ X61 @ (push @ X75 @ id)) @ id)) != $true)) | ($true = ((X60 @ id @ (lam @ X61) @ id))))) & ((hoasinduction_lem0_lthm = $true) <=> ! [X504 : (subst > term > subst > $o)] : ? [X505 : (term > $o)] : ! [X506 : term] : (((X505 @ X506)) = ((X504 @ id @ X506 @ id)))) & (hoasinduction_lem1 = $true) & ((? [X110 : term,X109 : subst] : (((comp @ sh @ (push @ X110 @ X109))) != X109) | ! [X111 : term,X112 : (term > $o),X113 : (term > $o),X115 : subst,X114 : term] : (($true != ((X112 @ X111))) | (((X113 @ (sub @ X111 @ (push @ X114 @ X115)))) = $true)) | ? [X107 : term,X108 : subst] : (((sub @ one @ (push @ X107 @ X108))) != X107)) <=> (pushprop_lem1_lthm = $true)) & (((d2subst @ d_id)) = ((push @ (d2term @ d_one) @ (d2subst @ d_id)))) & (ulamvarsh = $true) & ((shinj = $true) <=> ! [X296 : term,X295 : term] : ((((sub @ X295 @ sh)) != ((sub @ X296 @ sh))) | (X295 = X296))) & (pushprop_lem1_gthm = $true) & ((induction = $true) <=> ! [X524 : (term > $o),X523 : term] : (? [X525 : term] : (($true != ((X524 @ (lam @ X525)))) & ($true = ((X524 @ X525)))) | ? [X528 : term] : ((((X524 @ X528)) != $true) & (((var @ X528)) = $true)) | ? [X527 : term,X526 : term] : ((((X524 @ X526)) = $true) & ($true = ((X524 @ X527))) & ($true != ((X524 @ (ap @ X526 @ X527))))) | (((X524 @ X523)) = $true))) & ((axidr = $true) <=> ! [X8 : subst] : (((comp @ X8 @ id)) = X8)) & ! [X498 : subst] : ? [X499 : d_subst] : (((d2subst @ X499)) = X498) & (pushprop = $true) & (! [X18 : (subst > term > subst > $o),X17 : term] : (? [X26 : (subst > term > term)] : (! [X28 : subst,X29 : term,X27 : subst] : (((X26 @ (comp @ X27 @ X28) @ (sub @ X29 @ X28))) = ((sub @ (X26 @ X27 @ X29) @ X28))) & ! [X30 : term] : ((((X18 @ id @ (X26 @ id @ X30) @ id)) = $true) | ($true != ((X18 @ id @ X30 @ id)))) & ($true != ((X18 @ id @ (lam @ (X26 @ sh @ one)) @ id)))) | ? [X21 : term] : ((((X18 @ id @ X21 @ id)) != $true) & ($true = ((var @ (sub @ X21 @ id))))) | ($true = ((X18 @ id @ X17 @ id))) | ($true = ((sP3 @ X18))) | ? [X22 : subst,X23 : subst,X25 : term,X24 : subst] : (($true = ((X18 @ X22 @ X25 @ (comp @ X24 @ X23)))) & (((X18 @ (comp @ X22 @ X24) @ (sub @ X25 @ X24) @ X23)) != $true)) | ? [X31 : subst,X34 : subst,X33 : subst,X32 : term] : (($true != ((X18 @ X31 @ X32 @ (comp @ X33 @ X34)))) & ($true = ((X18 @ (comp @ X31 @ X33) @ (sub @ X32 @ X33) @ X34))))) <=> (hoasinduction = $true)) & ! [X398 : d_term,X397 : d_term] : ((X397 = X398) | (((d2term @ X398)) != ((d2term @ X397)))) & (hoasinduction_gthm = $true) & ((hoasinduction_lem3a = $true) <=> ! [X287 : (subst > term > subst > $o),X288 : term] : ((((X287 @ id @ (lam @ X288) @ id)) = $true) | ? [X289 : (subst > term > term)] : ((((X287 @ id @ (lam @ (X289 @ sh @ one)) @ id)) != $true) & ! [X290 : term] : ((((X287 @ id @ (X289 @ id @ X290) @ id)) = $true) | (((X287 @ id @ X290 @ id)) != $true)) & ! [X293 : term,X291 : subst,X292 : subst] : (((sub @ (X289 @ X292 @ X293) @ X291)) = ((X289 @ (comp @ X292 @ X291) @ (sub @ X293 @ X291))))) | ? [X294 : term] : (($true != ((X287 @ id @ (sub @ X288 @ (push @ X294 @ id)) @ id))) & (((X287 @ id @ X294 @ id)) = $true)))) & (axclos = $true) & (hoasinduction_lem2_gthm = $true) & (! [X11 : term,X10 : (term > $o)] : (? [X12 : term] : (($true != ((X10 @ X12))) & (((var @ X12)) = $true)) | ? [X13 : term,X14 : term] : ((((X10 @ X14)) = $true) & ($true != ((X10 @ (ap @ X14 @ X13)))) & (((X10 @ X13)) = $true)) | ($true = ((X10 @ X11))) | ? [X15 : term] : (! [X16 : term] : ((((X10 @ X16)) != $true) | ($true = ((X10 @ (sub @ X15 @ (push @ X16 @ id)))))) & (((X10 @ (lam @ X15))) != $true))) <=> (induction2 = $true)) & ((induction2lem_lthm = $true) <=> ($true = sP2)) & (! [X191 : term,X189 : subst,X190 : (term > $o)] : ? [X192 : (term > $o)] : ! [X193 : term] : (((X190 @ (sub @ X193 @ (push @ X191 @ X189)))) = ((X192 @ X193))) <=> (pushprop_lem0_lthm = $true)) & (hoasinduction_lem3b_gthm = $true) & (hoaslamnotvar_gthm = $true) & (! [X516 : term] : ? [X517 : (subst > term > term)] : ! [X519 : subst,X518 : term] : (((sub @ X516 @ (push @ X518 @ X519))) = ((X517 @ X519 @ X518))) <=> (hoasinduction_lem3v2_f = $true)) & ((hoasinduction_lthm_3 = $true) <=> (? [X153 : (term > $o),X154 : term] : (! [X159 : term] : (($true = ((X153 @ X159))) | ($true != ((var @ X159)))) & ($true != ((X153 @ X154))) & ! [X157 : term] : ((((X153 @ (lam @ X157))) = $true) | ? [X158 : term] : (($true = ((X153 @ X158))) & (((X153 @ (sub @ X157 @ (push @ X158 @ id)))) != $true))) & ! [X155 : term,X156 : term] : ((((X153 @ X155)) != $true) | ($true = ((X153 @ (ap @ X156 @ X155)))) | ($true != ((X153 @ X156))))) | ? [X150 : (subst > term > subst > $o)] : ! [X151 : (term > $o)] : ? [X152 : term] : (((X150 @ id @ X152 @ id)) != ((X151 @ X152))) | (sP1 = $true) | ? [X160 : term] : (((sub @ X160 @ id)) != X160) | ? [X162 : term,X163 : (subst > term > subst > $o),X161 : (term > $o)] : (! [X170 : term] : (((X161 @ X170)) = ((X163 @ id @ X170 @ id))) & ! [X164 : (subst > term > term)] : (($true = ((X163 @ id @ (lam @ (X164 @ sh @ one)) @ id))) | ? [X167 : subst,X166 : subst,X165 : term] : (((sub @ (X164 @ X166 @ X165) @ X167)) != ((X164 @ (comp @ X166 @ X167) @ (sub @ X165 @ X167)))) | ? [X168 : term] : ((((X163 @ id @ X168 @ id)) = $true) & (((X163 @ id @ (X164 @ id @ X168) @ id)) != $true))) & (((X161 @ (lam @ X162))) != $true) & ! [X169 : term] : (($true != ((X161 @ X169))) | (((X161 @ (sub @ X162 @ (push @ X169 @ id)))) = $true))))) & (((d2term @ d_one)) = ((hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one)))) & ((pushprop_lem1v2_lthm = $true) <=> (! [X402 : subst,X401 : (term > $o),X404 : term,X403 : (term > $o)] : ((((X401 @ X404)) != $true) | ? [X405 : term] : (((X403 @ X405)) != ((X401 @ (sub @ X405 @ (push @ X404 @ X402))))) | ($true = ((X403 @ one)))) | ? [X400 : subst,X399 : term] : (((sub @ one @ (push @ X399 @ X400))) != X399))) & ! [X35 : d_subst] : (d_id = X35) & ((! [X515 : term,X512 : term,X514 : term,X513 : term] : ((((ap @ (sub @ X513 @ id) @ X514)) != ((ap @ (sub @ X515 @ id) @ X512))) | (X513 = X515)) | ? [X510 : term,X511 : term,X508 : term,X509 : term] : ((((ap @ X511 @ X509)) = ((ap @ X508 @ X510))) & (X508 != X511)) | ? [X507 : term] : (((sub @ X507 @ id)) != X507)) <=> (hoasapinj1_lthm = $true)) & (((d2term @ d_one)) = one) & (apnotvar = $true) & (axabs = $true) & ((pushprop_lem1v2 = $true) <=> ! [X284 : subst,X282 : (term > $o),X285 : term,X283 : (term > $o)] : (($true = ((X282 @ one))) | ? [X286 : term] : (((X282 @ X286)) != ((X283 @ (sub @ X286 @ (push @ X285 @ X284))))) | (((X283 @ X285)) != $true))) & (! [X494 : term,X493 : term,X492 : term,X495 : term] : ((((ap @ X492 @ X494)) != ((ap @ X493 @ X495))) | (X494 = X495)) <=> (apinj2 = $true)) & (hoasinduction_lem1v2_gthm = $true) & (! [X491 : term,X490 : term] : ((X490 = X491) | (((lam @ X490)) != ((lam @ X491)))) <=> (laminj = $true)) & (pushprop_lem2v2_gthm = $true) & (ulamvarind = $true) & ((hoaslamnotap = $true) <=> ! [X482 : (subst > term > term),X480 : term,X481 : term] : ((((ap @ (sub @ X481 @ id) @ X480)) != ((lam @ (X482 @ sh @ one)))) | ? [X485 : subst,X484 : subst,X483 : term] : (((sub @ (X482 @ X484 @ X483) @ X485)) != ((X482 @ (comp @ X484 @ X485) @ (sub @ X483 @ X485)))))) & (! [X369 : term] : ? [X370 : (subst > term > term)] : ! [X371 : subst,X372 : term] : (((X370 @ X371 @ X372)) = ((sub @ X369 @ (push @ X372 @ X371)))) <=> (hoasinduction_lem3v2_f_lthm = $true)) & (hoaslamnotvar_lthm = $true) & ((hoasinduction_lem3b_lthm = $true) <=> ! [X373 : term] : ? [X374 : (subst > term > term)] : (((sub @ X373 @ (push @ one @ sh))) = ((X374 @ sh @ one)))) & (! [X412 : (subst > term > subst > $o),X411 : term] : ((((X412 @ id @ (lam @ (sub @ X411 @ (push @ one @ sh))) @ id)) = $true) | ? [X413 : term] : ((((X412 @ id @ (sub @ X411 @ (push @ X413 @ id)) @ id)) != $true) & (((X412 @ id @ X413 @ id)) = $true)) | ? [X414 : term,X415 : (subst > term > term)] : ((((X412 @ id @ (lam @ (X415 @ sh @ one)) @ id)) != $true) & ! [X419 : subst,X417 : term,X418 : subst] : (((sub @ (X415 @ X419 @ X417) @ X418)) = ((sub @ (sub @ X414 @ (push @ X417 @ X419)) @ X418))) & ! [X422 : subst,X420 : term,X421 : subst] : (((sub @ X414 @ (push @ (sub @ X420 @ X421) @ (comp @ X422 @ X421)))) = ((X415 @ (comp @ X422 @ X421) @ (sub @ X420 @ X421)))) & ! [X416 : term] : (($true != ((X412 @ id @ X416 @ id))) | ($true = ((X412 @ id @ (X415 @ id @ X416) @ id)))))) <=> (hoasinduction_lem3aaa = $true)) & ((axshiftcons = $true) <=> ! [X396 : term,X395 : subst] : (((comp @ sh @ (push @ X396 @ X395))) = X395)) & (ulamvar1 != $true) & ((substmonoid = $true) <=> (! [X77 : subst] : (((comp @ X77 @ id)) = X77) & ! [X76 : subst] : (((comp @ id @ X76)) = X76))) & (hoasapinj2_gthm = $true) & ((! [X387 : (term > $o),X386 : term,X385 : (subst > term > subst > $o)] : (($true = ((X387 @ (lam @ X386)))) | ? [X390 : (subst > term > term)] : (! [X392 : subst,X391 : term,X393 : subst] : (((X390 @ (comp @ X393 @ X392) @ (sub @ X391 @ X392))) = ((sub @ (X390 @ X393 @ X391) @ X392))) & ($true != ((X385 @ id @ (lam @ (X390 @ sh @ one)) @ id))) & ! [X394 : term] : (($true = ((X385 @ id @ (X390 @ id @ X394) @ id))) | (((X385 @ id @ X394 @ id)) != $true))) | ? [X388 : term] : ((((X387 @ X388)) = $true) & (((X387 @ (sub @ X386 @ (push @ X388 @ id)))) != $true)) | ? [X389 : term] : (((X387 @ X389)) != ((X385 @ id @ X389 @ id)))) | ? [X384 : term] : (((sub @ X384 @ id)) != X384) | ? [X380 : term] : ! [X381 : (subst > term > term)] : ? [X382 : subst,X383 : term] : (((sub @ X380 @ (push @ X383 @ X382))) != ((X381 @ X382 @ X383)))) <=> (hoasinduction_lem3v2a_lthm = $true)) & (! [X331 : (subst > term > subst > $o),X330 : term] : ((((X331 @ id @ (lam @ (sub @ X330 @ (push @ one @ sh))) @ id)) = $true) | ? [X332 : (subst > term > term)] : (! [X336 : term,X334 : subst,X335 : subst] : (((X332 @ (comp @ X334 @ X335) @ (sub @ X336 @ X335))) = ((sub @ (X332 @ X334 @ X336) @ X335))) & ($true != ((X331 @ id @ (lam @ (X332 @ sh @ one)) @ id))) & ! [X333 : term] : (($true != ((X331 @ id @ X333 @ id))) | ($true = ((X331 @ id @ (X332 @ id @ X333) @ id))))) | ? [X337 : term] : (($true = ((X331 @ id @ X337 @ id))) & ($true != ((X331 @ id @ (sub @ X330 @ (push @ X337 @ id)) @ id))))) <=> (hoasinduction_lem3aa_lthm = $true)) & (! [X500 : term,X502 : term,X503 : term,X501 : term] : ((X502 = X503) | (((ap @ (sub @ X502 @ id) @ X501)) != ((ap @ (sub @ X503 @ id) @ X500)))) <=> (hoasapinj1 = $true)) & (hoasinduction_lem3a_gthm = $true) & (! [X54 : term,X52 : (term > $o),X53 : subst] : (? [X58 : term] : (! [X59 : term] : (($true != ((X52 @ X59))) | ($true = ((X52 @ (sub @ X58 @ (push @ X59 @ id)))))) & (((X52 @ (lam @ X58))) != $true)) | ? [X56 : term,X57 : term] : ((((X52 @ X56)) = $true) & ($true = ((X52 @ X57))) & ($true != ((X52 @ (ap @ X56 @ X57))))) | ? [X55 : term] : ((((X52 @ (sub @ X55 @ X53))) != $true) & ($true = ((var @ X55)))) | ($true = ((X52 @ (sub @ X54 @ X53))))) <=> (induction2lem = $true)) & (hoasinduction_lem2v2_gthm = $true) & (pushprop_lthm = $true) & (lamnotap != $true) & (((d2subst @ d_id)) = id) & (! [X406 : (term > $o),X408 : term,X409 : (term > $o),X407 : subst,X410 : term] : ((((X406 @ (sub @ X410 @ (push @ X408 @ X407)))) = $true) | ($true != ((X409 @ X410)))) <=> (pushprop_lem1 = $true)) & (((d2term @ d_one)) = ((ap @ (d2term @ d_one) @ (d2term @ d_one)))) & (axapp = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & ((hoasapinj2 = $true) <=> ! [X378 : term,X377 : term,X376 : term,X379 : term] : ((X377 = X379) | (((ap @ (sub @ X378 @ id) @ X379)) != ((ap @ (sub @ X376 @ id) @ X377))))) & (((d2subst @ d_id)) = sh) & (((d2term @ d_one)) = ((lam @ (d2term @ d_one)))) & (! [X497 : subst,X496 : term] : (((sub @ one @ (push @ X496 @ X497))) = X496) <=> (axvarcons = $true)) & (! [X338 : term] : ? [X339 : (subst > term > term)] : (((X339 @ sh @ one)) = ((sub @ X338 @ (push @ one @ sh)))) <=> (hoasinduction_lem3b = $true)) & ((? [X487 : subst] : (((comp @ X487 @ id)) != X487) | ? [X486 : subst] : (((comp @ id @ X486)) != X486) | (! [X489 : subst] : (((comp @ X489 @ id)) = X489) & ! [X488 : subst] : (((comp @ id @ X488)) = X488))) <=> (substmonoid_lthm = $true)) & (axassoc = $true) & (lamnotvar = $true) & (pushprop_lem3v2_lthm = $true) & (termmset_gthm = $true) & ((hoasapinj2_lthm = $true) <=> (? [X313 : term,X315 : term,X316 : term,X314 : term] : ((X315 != X316) & (((ap @ X313 @ X315)) = ((ap @ X314 @ X316)))) | ! [X320 : term,X317 : term,X319 : term,X318 : term] : ((((ap @ (sub @ X320 @ id) @ X318)) != ((ap @ (sub @ X317 @ id) @ X319))) | (X318 = X319)))) & (hoasapnotvar = $true) & ! [X474 : d_subst,X473 : d_subst] : ((X473 = X474) | (((d2subst @ X474)) != ((d2subst @ X473)))) & (hoasinduction_lem3_gthm = $true) & (pushprop_lem3v2 = $true) & (! [X117 : (term > $o),X118 : term,X116 : (subst > term > subst > $o)] : (? [X133 : term] : (((X116 @ id @ X133 @ id)) != ((X117 @ X133))) | ? [X125 : subst,X126 : subst,X128 : subst,X127 : term] : ((((X116 @ (comp @ X125 @ X128) @ (sub @ X127 @ X128) @ X126)) = $true) & ($true != ((X116 @ X125 @ X127 @ (comp @ X128 @ X126))))) | ? [X131 : subst,X132 : term,X129 : subst,X130 : subst] : ((((X116 @ (comp @ X129 @ X130) @ (sub @ X132 @ X130) @ X131)) != $true) & (((X116 @ X129 @ X132 @ (comp @ X130 @ X131))) = $true)) | ($true = ((X117 @ (lam @ X118)))) | ? [X124 : term] : (($true = ((X117 @ X124))) & (((X117 @ (sub @ X118 @ (push @ X124 @ id)))) != $true)) | ? [X119 : (subst > term > term)] : (! [X123 : term] : ((((X116 @ id @ X123 @ id)) != $true) | ($true = ((X116 @ id @ (X119 @ id @ X123) @ id)))) & ($true != ((X116 @ id @ (lam @ (X119 @ sh @ one)) @ id))) & ! [X122 : term,X120 : subst,X121 : subst] : (((X119 @ (comp @ X121 @ X120) @ (sub @ X122 @ X120))) = ((sub @ (X119 @ X121 @ X122) @ X120))))) <=> (hoasinduction_lem3v2 = $true)) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y1 @ Y2) = (Y0 @ id @ Y2 @ id)))))))) & (hoasinduction_lem3v2_gthm = $true) & (! [X0 : term,X1 : (subst > term > subst > $o)] : (? [X2 : (subst > term > term)] : ((((X1 @ id @ (lam @ (X2 @ sh @ one)) @ id)) != $true) & ! [X3 : subst,X5 : term,X4 : subst] : (((sub @ (X2 @ X3 @ X5) @ X4)) = ((X2 @ (comp @ X3 @ X4) @ (sub @ X5 @ X4)))) & ! [X6 : term] : ((((X1 @ id @ X6 @ id)) != $true) | (((X1 @ id @ (X2 @ id @ X6) @ id)) = $true))) | ? [X7 : term] : (($true = ((X1 @ id @ X7 @ id))) & (((X1 @ id @ (sub @ X0 @ (push @ X7 @ id)) @ id)) != $true)) | ($true = ((X1 @ id @ (lam @ (sub @ X0 @ (push @ one @ sh))) @ id)))) <=> (hoasinduction_lem3aa = $true)) & ! [X149 : d_term] : (d_one = X149) & (hoasinduction_lem1v2 = $true) & ((! [X91 : (subst > term > subst > $o),X89 : term,X90 : (term > $o)] : (? [X106 : subst,X103 : subst,X105 : subst,X104 : term] : (($true != ((X91 @ X106 @ X104 @ (comp @ X103 @ X105)))) & ($true = ((X91 @ (comp @ X106 @ X103) @ (sub @ X104 @ X103) @ X105)))) | ? [X101 : subst,X99 : subst,X102 : term,X100 : subst] : (($true = ((X91 @ X99 @ X102 @ (comp @ X101 @ X100)))) & ($true != ((X91 @ (comp @ X99 @ X101) @ (sub @ X102 @ X101) @ X100)))) | (((X90 @ (lam @ X89))) = $true) | ? [X97 : term] : (((X91 @ id @ X97 @ id)) != ((X90 @ X97))) | ? [X92 : (subst > term > term)] : (! [X96 : term] : ((((X91 @ id @ X96 @ id)) != $true) | ($true = ((X91 @ id @ (X92 @ id @ X96) @ id)))) & ! [X95 : subst,X94 : term,X93 : subst] : (((sub @ (X92 @ X95 @ X94) @ X93)) = ((X92 @ (comp @ X95 @ X93) @ (sub @ X94 @ X93)))) & (((X91 @ id @ (lam @ (X92 @ sh @ one)) @ id)) != $true)) | ? [X98 : term] : (($true != ((X90 @ (sub @ X89 @ (push @ X98 @ id))))) & ($true = ((X90 @ X98))))) | ? [X88 : term] : (((sub @ X88 @ id)) != X88)) <=> (hoasinduction_lem3v2_lthm = $true)) & ((axidl = $true) <=> ! [X9 : subst] : (((comp @ id @ X9)) = X9)) & (hoasapnotvar_lthm = $true) & (hoasinduction_lem2_lthm = $true) & (! [X475 : term,X477 : subst,X476 : (term > $o)] : ? [X478 : (term > $o)] : ! [X479 : term] : (((X476 @ (sub @ X479 @ (push @ X475 @ X477)))) = ((X478 @ X479))) <=> (pushprop_lem0 = $true))),
  inference(definition_folding,[],[f11,f23,f22,f21,f20,f19,f18,f17,f16,f15,f14])).
thf(f57,plain,(
  (pushprop_gthm = $true) & (((? [X344 : term] : (((sub @ X344 @ id)) != X344) | ? [X345 : term,X346 : (subst > term > subst > $o)] : ((((X346 @ id @ (lam @ (sub @ X345 @ (push @ one @ sh))) @ id)) != $true) & ! [X348 : (subst > term > term)] : (? [X349 : term] : (($true != ((X346 @ id @ (X348 @ id @ X349) @ id))) & ($true = ((X346 @ id @ X349 @ id)))) | ? [X351 : subst,X350 : term,X352 : subst] : (((sub @ (X348 @ X352 @ X350) @ X351)) != ((X348 @ (comp @ X352 @ X351) @ (sub @ X350 @ X351)))) | ($true = ((X346 @ id @ (lam @ (X348 @ sh @ one)) @ id)))) & ! [X347 : term] : (($true != ((X346 @ id @ X347 @ id))) | ($true = ((X346 @ id @ (sub @ X345 @ (push @ X347 @ id)) @ id))))) | ($true = sP9)) | (hoasinduction_lem3_lthm != $true)) & ((hoasinduction_lem3_lthm = $true) | (! [X344 : term] : (((sub @ X344 @ id)) = X344) & ! [X345 : term,X346 : (subst > term > subst > $o)] : ((((X346 @ id @ (lam @ (sub @ X345 @ (push @ one @ sh))) @ id)) = $true) | ? [X348 : (subst > term > term)] : (! [X349 : term] : (($true = ((X346 @ id @ (X348 @ id @ X349) @ id))) | ($true != ((X346 @ id @ X349 @ id)))) & ! [X351 : subst,X350 : term,X352 : subst] : (((sub @ (X348 @ X352 @ X350) @ X351)) = ((X348 @ (comp @ X352 @ X351) @ (sub @ X350 @ X351)))) & ($true != ((X346 @ id @ (lam @ (X348 @ sh @ one)) @ id)))) | ? [X347 : term] : (($true = ((X346 @ id @ X347 @ id))) & ($true != ((X346 @ id @ (sub @ X345 @ (push @ X347 @ id)) @ id))))) & ($true != sP9)))) & ((! [X520 : (subst > term > subst > $o)] : ? [X521 : (term > $o)] : ! [X522 : term] : (((X521 @ X522)) = ((X520 @ id @ X522 @ id))) | (hoasinduction_lem0 != $true)) & ((hoasinduction_lem0 = $true) | ? [X520 : (subst > term > subst > $o)] : ! [X521 : (term > $o)] : ? [X522 : term] : (((X521 @ X522)) != ((X520 @ id @ X522 @ id))))) & (((hoaslaminj_lthm = $true) | (? [X304 : subst,X306 : (subst > term > term),X303 : (subst > term > term),X305 : term] : (! [X308 : subst,X309 : subst,X307 : term] : (((sub @ (X303 @ X308 @ X307) @ X309)) = ((X303 @ (comp @ X308 @ X309) @ (sub @ X307 @ X309)))) & (((X306 @ X304 @ X305)) != ((X303 @ X304 @ X305))) & (((lam @ (X303 @ sh @ one))) = ((lam @ (X306 @ sh @ one)))) & ! [X310 : subst,X311 : term,X312 : subst] : (((sub @ (X306 @ X310 @ X311) @ X312)) = ((X306 @ (comp @ X310 @ X312) @ (sub @ X311 @ X312))))) & ! [X301 : term,X302 : term] : ((((lam @ X302)) != ((lam @ X301))) | (X301 = X302)) & ! [X300 : subst,X299 : term] : (((comp @ sh @ (push @ X299 @ X300))) = X300) & ! [X298 : term,X297 : subst] : (((sub @ one @ (push @ X298 @ X297))) = X298))) & ((! [X304 : subst,X306 : (subst > term > term),X303 : (subst > term > term),X305 : term] : (? [X308 : subst,X309 : subst,X307 : term] : (((sub @ (X303 @ X308 @ X307) @ X309)) != ((X303 @ (comp @ X308 @ X309) @ (sub @ X307 @ X309)))) | (((X306 @ X304 @ X305)) = ((X303 @ X304 @ X305))) | (((lam @ (X303 @ sh @ one))) != ((lam @ (X306 @ sh @ one)))) | ? [X310 : subst,X311 : term,X312 : subst] : (((sub @ (X306 @ X310 @ X311) @ X312)) != ((X306 @ (comp @ X310 @ X312) @ (sub @ X311 @ X312))))) | ? [X301 : term,X302 : term] : ((((lam @ X302)) = ((lam @ X301))) & (X301 != X302)) | ? [X300 : subst,X299 : term] : (((comp @ sh @ (push @ X299 @ X300))) != X300) | ? [X298 : term,X297 : subst] : (((sub @ one @ (push @ X298 @ X297))) != X298)) | (hoaslaminj_lthm != $true))) & (((d2term @ d_one)) = ((sub @ (d2term @ d_one) @ (d2subst @ d_id)))) & (hoaslamnotap_gthm = $true) & (pushprop_lem2v2_lthm = $true) & ((! [X529 : subst,X530 : (subst > term > term),X532 : term,X531 : (subst > term > term)] : (? [X535 : subst,X534 : term,X533 : subst] : (((X531 @ (comp @ X535 @ X533) @ (sub @ X534 @ X533))) != ((sub @ (X531 @ X535 @ X534) @ X533))) | ? [X536 : term,X538 : subst,X537 : subst] : (((X530 @ (comp @ X537 @ X538) @ (sub @ X536 @ X538))) != ((sub @ (X530 @ X537 @ X536) @ X538))) | (((X530 @ X529 @ X532)) = ((X531 @ X529 @ X532))) | (((lam @ (X530 @ sh @ one))) != ((lam @ (X531 @ sh @ one))))) | (hoaslaminj != $true)) & ((hoaslaminj = $true) | ? [X529 : subst,X530 : (subst > term > term),X532 : term,X531 : (subst > term > term)] : (! [X535 : subst,X534 : term,X533 : subst] : (((X531 @ (comp @ X535 @ X533) @ (sub @ X534 @ X533))) = ((sub @ (X531 @ X535 @ X534) @ X533))) & ! [X536 : term,X538 : subst,X537 : subst] : (((X530 @ (comp @ X537 @ X538) @ (sub @ X536 @ X538))) = ((sub @ (X530 @ X537 @ X536) @ X538))) & (((X530 @ X529 @ X532)) != ((X531 @ X529 @ X532))) & (((lam @ (X530 @ sh @ one))) = ((lam @ (X531 @ sh @ one))))))) & ! [X441 : term] : ? [X442 : d_term] : (((d2term @ X442)) = X441) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & (((hoasinduction_no_psi_cond = $true) | ? [X322 : (subst > term > subst > $o),X321 : term] : (($true != ((X322 @ id @ X321 @ id))) & ! [X324 : term,X323 : term] : ((((X322 @ id @ X324 @ id)) != $true) | ($true != ((X322 @ id @ X323 @ id))) | ($true = ((X322 @ id @ (ap @ (sub @ X323 @ id) @ X324) @ id)))) & ! [X325 : (subst > term > term)] : (? [X326 : term] : ((((X322 @ id @ X326 @ id)) = $true) & (((X322 @ id @ (X325 @ id @ X326) @ id)) != $true)) | ? [X329 : subst,X327 : subst,X328 : term] : (((sub @ (X325 @ X329 @ X328) @ X327)) != ((X325 @ (comp @ X329 @ X327) @ (sub @ X328 @ X327)))) | (((X322 @ id @ (lam @ (X325 @ sh @ one)) @ id)) = $true)))) & (! [X322 : (subst > term > subst > $o),X321 : term] : (($true = ((X322 @ id @ X321 @ id))) | ? [X324 : term,X323 : term] : ((((X322 @ id @ X324 @ id)) = $true) & ($true = ((X322 @ id @ X323 @ id))) & ($true != ((X322 @ id @ (ap @ (sub @ X323 @ id) @ X324) @ id)))) | ? [X325 : (subst > term > term)] : (! [X326 : term] : ((((X322 @ id @ X326 @ id)) != $true) | (((X322 @ id @ (X325 @ id @ X326) @ id)) = $true)) & ! [X329 : subst,X327 : subst,X328 : term] : (((sub @ (X325 @ X329 @ X328) @ X327)) = ((X325 @ (comp @ X329 @ X327) @ (sub @ X328 @ X327)))) & (((X322 @ id @ (lam @ (X325 @ sh @ one)) @ id)) != $true))) | (hoasinduction_no_psi_cond != $true))) & (hoasapinj1_gthm = $true) & (hoaslamnotvar = $true) & (((axscons = $true) | ? [X375 : subst] : (((push @ (sub @ one @ X375) @ (comp @ sh @ X375))) != X375)) & (! [X375 : subst] : (((push @ (sub @ one @ X375) @ (comp @ sh @ X375))) = X375) | (axscons != $true))) & (hoasinduction_lem1_lthm = $true) & (hoaslamnotap_lthm = $true) & ((! [X539 : term] : (((sub @ X539 @ id)) = X539) | (termmset != $true)) & ((termmset = $true) | ? [X539 : term] : (((sub @ X539 @ id)) != X539))) & (((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id))) != $true) & (induction2lem_gthm = $true) & (((termmset_lthm = $true) | (! [X194 : term] : (((sub @ X194 @ id)) = X194) & ? [X195 : term] : (((sub @ X195 @ id)) != X195))) & ((? [X194 : term] : (((sub @ X194 @ id)) != X194) | ! [X195 : term] : (((sub @ X195 @ id)) = X195)) | (termmset_lthm != $true))) & (((hoasinduction_lem2 = $true) | ? [X250 : (subst > term > subst > $o),X252 : term,X251 : term] : (! [X254 : term,X253 : term] : ((((X250 @ id @ (ap @ (sub @ X254 @ id) @ X253) @ id)) = $true) | ($true != ((X250 @ id @ X253 @ id))) | (((X250 @ id @ X254 @ id)) != $true)) & ($true = ((X250 @ id @ X252 @ id))) & ! [X257 : subst,X258 : subst,X255 : term,X256 : subst] : (($true = ((X250 @ (comp @ X258 @ X257) @ (sub @ X255 @ X257) @ X256))) | ($true != ((X250 @ X258 @ X255 @ (comp @ X257 @ X256))))) & ! [X262 : subst,X260 : subst,X259 : term,X261 : subst] : (($true = ((X250 @ X261 @ X259 @ (comp @ X262 @ X260)))) | ($true != ((X250 @ (comp @ X261 @ X262) @ (sub @ X259 @ X262) @ X260)))) & ($true != ((X250 @ id @ (ap @ X251 @ X252) @ id))) & (((X250 @ id @ X251 @ id)) = $true))) & (! [X250 : (subst > term > subst > $o),X252 : term,X251 : term] : (? [X254 : term,X253 : term] : ((((X250 @ id @ (ap @ (sub @ X254 @ id) @ X253) @ id)) != $true) & ($true = ((X250 @ id @ X253 @ id))) & (((X250 @ id @ X254 @ id)) = $true)) | ($true != ((X250 @ id @ X252 @ id))) | ? [X257 : subst,X258 : subst,X255 : term,X256 : subst] : (($true != ((X250 @ (comp @ X258 @ X257) @ (sub @ X255 @ X257) @ X256))) & ($true = ((X250 @ X258 @ X255 @ (comp @ X257 @ X256))))) | ? [X262 : subst,X260 : subst,X259 : term,X261 : subst] : (($true != ((X250 @ X261 @ X259 @ (comp @ X262 @ X260)))) & ($true = ((X250 @ (comp @ X261 @ X262) @ (sub @ X259 @ X262) @ X260)))) | ($true = ((X250 @ id @ (ap @ X251 @ X252) @ id))) | (((X250 @ id @ X251 @ id)) != $true)) | (hoasinduction_lem2 != $true))) & (((hoasinduction_lthm = $true) | (! [X196 : term,X197 : (term > $o)] : (($true = ((X197 @ X196))) | ? [X200 : term,X199 : term] : (($true != ((X197 @ (ap @ X200 @ X199)))) & ($true = ((X197 @ X199))) & (((X197 @ X200)) = $true)) | ? [X198 : term] : (($true != ((X197 @ X198))) & (((var @ X198)) = $true)) | ? [X201 : term] : (! [X202 : term] : (($true = ((X197 @ (sub @ X201 @ (push @ X202 @ id))))) | ($true != ((X197 @ X202)))) & (((X197 @ (lam @ X201))) != $true))) & ! [X203 : term,X204 : term,X205 : (subst > term > subst > $o)] : (? [X214 : subst,X215 : term,X213 : subst,X212 : subst] : (($true = ((X205 @ (comp @ X213 @ X214) @ (sub @ X215 @ X214) @ X212))) & ($true != ((X205 @ X213 @ X215 @ (comp @ X214 @ X212))))) | ? [X211 : term,X210 : term] : ((((X205 @ id @ X211 @ id)) = $true) & ($true = ((X205 @ id @ X210 @ id))) & ($true != ((X205 @ id @ (ap @ (sub @ X210 @ id) @ X211) @ id)))) | ? [X209 : subst,X207 : subst,X208 : term,X206 : subst] : ((((X205 @ (comp @ X207 @ X209) @ (sub @ X208 @ X209) @ X206)) != $true) & (((X205 @ X207 @ X208 @ (comp @ X209 @ X206))) = $true)) | (((X205 @ id @ X204 @ id)) != $true) | ($true = ((X205 @ id @ (ap @ X204 @ X203) @ id))) | (((X205 @ id @ X203 @ id)) != $true)) & (sP8 != $true) & ($true != sP7))) & ((? [X196 : term,X197 : (term > $o)] : (($true != ((X197 @ X196))) & ! [X200 : term,X199 : term] : (($true = ((X197 @ (ap @ X200 @ X199)))) | ($true != ((X197 @ X199))) | (((X197 @ X200)) != $true)) & ! [X198 : term] : (($true = ((X197 @ X198))) | (((var @ X198)) != $true)) & ! [X201 : term] : (? [X202 : term] : (($true != ((X197 @ (sub @ X201 @ (push @ X202 @ id))))) & ($true = ((X197 @ X202)))) | (((X197 @ (lam @ X201))) = $true))) | ? [X203 : term,X204 : term,X205 : (subst > term > subst > $o)] : (! [X214 : subst,X215 : term,X213 : subst,X212 : subst] : (($true != ((X205 @ (comp @ X213 @ X214) @ (sub @ X215 @ X214) @ X212))) | ($true = ((X205 @ X213 @ X215 @ (comp @ X214 @ X212))))) & ! [X211 : term,X210 : term] : ((((X205 @ id @ X211 @ id)) != $true) | ($true != ((X205 @ id @ X210 @ id))) | ($true = ((X205 @ id @ (ap @ (sub @ X210 @ id) @ X211) @ id)))) & ! [X209 : subst,X207 : subst,X208 : term,X206 : subst] : ((((X205 @ (comp @ X207 @ X209) @ (sub @ X208 @ X209) @ X206)) = $true) | (((X205 @ X207 @ X208 @ (comp @ X209 @ X206))) != $true)) & (((X205 @ id @ X204 @ id)) = $true) & ($true != ((X205 @ id @ (ap @ X204 @ X203) @ id))) & (((X205 @ id @ X203 @ id)) = $true)) | (sP8 = $true) | ($true = sP7)) | (hoasinduction_lthm != $true))) & (pushprop_lem1v2_gthm = $true) & (((d2subst @ d_id)) = ((comp @ (d2subst @ d_id) @ (d2subst @ d_id)))) & (hoasinduction_lem1_gthm = $true) & ((! [X342 : term,X340 : term,X343 : term,X341 : term] : ((X341 = X342) | (((ap @ X342 @ X340)) != ((ap @ X341 @ X343)))) | (apinj1 != $true)) & ((apinj1 = $true) | ? [X342 : term,X340 : term,X343 : term,X341 : term] : ((X341 != X342) & (((ap @ X342 @ X340)) = ((ap @ X341 @ X343)))))) & (hoasapnotvar_gthm = $true) & (axmap = $true) & ((($true = sP5) | (induction2_lthm != $true)) & ((induction2_lthm = $true) | ($true != sP5))) & (substmonoid_gthm = $true) & (axvarshift = $true) & (pushprop_lem0_gthm = $true) & ((! [X135 : term,X137 : (term > $o),X134 : term,X136 : (subst > term > subst > $o)] : ((((X137 @ (ap @ X135 @ X134))) = $true) | (((X137 @ X135)) != $true) | ? [X147 : term,X148 : term] : (($true = ((X136 @ id @ X148 @ id))) & ($true = ((X136 @ id @ X147 @ id))) & ($true != ((X136 @ id @ (ap @ (sub @ X148 @ id) @ X147) @ id)))) | ? [X143 : term,X144 : subst,X145 : subst,X142 : subst] : (($true = ((X136 @ (comp @ X142 @ X145) @ (sub @ X143 @ X145) @ X144))) & ($true != ((X136 @ X142 @ X143 @ (comp @ X145 @ X144))))) | ($true != ((X137 @ X134))) | ? [X141 : subst,X138 : term,X140 : subst,X139 : subst] : (($true != ((X136 @ (comp @ X140 @ X141) @ (sub @ X138 @ X141) @ X139))) & (((X136 @ X140 @ X138 @ (comp @ X141 @ X139))) = $true)) | ? [X146 : term] : (((X136 @ id @ X146 @ id)) != ((X137 @ X146)))) | (hoasinduction_lem2v2 != $true)) & ((hoasinduction_lem2v2 = $true) | ? [X135 : term,X137 : (term > $o),X134 : term,X136 : (subst > term > subst > $o)] : ((((X137 @ (ap @ X135 @ X134))) != $true) & (((X137 @ X135)) = $true) & ! [X147 : term,X148 : term] : (($true != ((X136 @ id @ X148 @ id))) | ($true != ((X136 @ id @ X147 @ id))) | ($true = ((X136 @ id @ (ap @ (sub @ X148 @ id) @ X147) @ id)))) & ! [X143 : term,X144 : subst,X145 : subst,X142 : subst] : (($true != ((X136 @ (comp @ X142 @ X145) @ (sub @ X143 @ X145) @ X144))) | ($true = ((X136 @ X142 @ X143 @ (comp @ X145 @ X144))))) & ($true = ((X137 @ X134))) & ! [X141 : subst,X138 : term,X140 : subst,X139 : subst] : (($true = ((X136 @ (comp @ X140 @ X141) @ (sub @ X138 @ X141) @ X139))) | (((X136 @ X140 @ X138 @ (comp @ X141 @ X139))) != $true)) & ! [X146 : term] : (((X136 @ id @ X146 @ id)) = ((X137 @ X146)))))) & (((var @ (d2term @ d_one))) != $true) & ((! [X440 : term] : (((sub @ X440 @ id)) = X440) | (axvarid != $true)) & ((axvarid = $true) | ? [X440 : term] : (((sub @ X440 @ id)) != X440))) & (((? [X423 : term] : (((sub @ X423 @ id)) != X423) | ! [X432 : term,X433 : (subst > term > subst > $o)] : (? [X439 : term] : (($true = ((X433 @ id @ X439 @ id))) & (((X433 @ id @ (sub @ X432 @ (push @ X439 @ id)) @ id)) != $true)) | ? [X434 : (subst > term > term)] : (($true != ((X433 @ id @ (lam @ (X434 @ sh @ one)) @ id))) & ! [X437 : subst,X436 : subst,X435 : term] : (((X434 @ (comp @ X436 @ X437) @ (sub @ X435 @ X437))) = ((sub @ (X434 @ X436 @ X435) @ X437))) & ! [X438 : term] : (($true = ((X433 @ id @ (X434 @ id @ X438) @ id))) | (((X433 @ id @ X438 @ id)) != $true))) | (((X433 @ id @ (lam @ X432) @ id)) = $true)) | ? [X424 : term,X425 : (subst > term > subst > $o)] : (! [X426 : (subst > term > term)] : (? [X430 : term] : (($true != ((X425 @ id @ (X426 @ id @ X430) @ id))) & ($true = ((X425 @ id @ X430 @ id)))) | ($true = ((X425 @ id @ (lam @ (X426 @ sh @ one)) @ id))) | ? [X427 : subst,X428 : term,X429 : subst] : (((X426 @ (comp @ X427 @ X429) @ (sub @ X428 @ X429))) != ((sub @ (X426 @ X427 @ X428) @ X429)))) & ($true != ((X425 @ id @ (lam @ (sub @ X424 @ (push @ one @ sh))) @ id))) & ! [X431 : term] : (($true != ((X425 @ id @ X431 @ id))) | (((X425 @ id @ (sub @ X424 @ (push @ X431 @ id)) @ id)) = $true)))) | (hoasinduction_lem3a_lthm != $true)) & ((hoasinduction_lem3a_lthm = $true) | (! [X423 : term] : (((sub @ X423 @ id)) = X423) & ? [X432 : term,X433 : (subst > term > subst > $o)] : (! [X439 : term] : (($true != ((X433 @ id @ X439 @ id))) | (((X433 @ id @ (sub @ X432 @ (push @ X439 @ id)) @ id)) = $true)) & ! [X434 : (subst > term > term)] : (($true = ((X433 @ id @ (lam @ (X434 @ sh @ one)) @ id))) | ? [X437 : subst,X436 : subst,X435 : term] : (((X434 @ (comp @ X436 @ X437) @ (sub @ X435 @ X437))) != ((sub @ (X434 @ X436 @ X435) @ X437))) | ? [X438 : term] : (($true != ((X433 @ id @ (X434 @ id @ X438) @ id))) & (((X433 @ id @ X438 @ id)) = $true))) & (((X433 @ id @ (lam @ X432) @ id)) != $true)) & ! [X424 : term,X425 : (subst > term > subst > $o)] : (? [X426 : (subst > term > term)] : (! [X430 : term] : (($true = ((X425 @ id @ (X426 @ id @ X430) @ id))) | ($true != ((X425 @ id @ X430 @ id)))) & ($true != ((X425 @ id @ (lam @ (X426 @ sh @ one)) @ id))) & ! [X427 : subst,X428 : term,X429 : subst] : (((X426 @ (comp @ X427 @ X429) @ (sub @ X428 @ X429))) = ((sub @ (X426 @ X427 @ X428) @ X429)))) | ($true = ((X425 @ id @ (lam @ (sub @ X424 @ (push @ one @ sh))) @ id))) | ? [X431 : term] : (($true = ((X425 @ id @ X431 @ id))) & (((X425 @ id @ (sub @ X424 @ (push @ X431 @ id)) @ id)) != $true)))))) & (((hoasinduction_lem3v2a = $true) | ? [X80 : (subst > term > subst > $o),X78 : (term > $o),X79 : term] : (! [X81 : term] : (((X78 @ X81)) = ((X80 @ id @ X81 @ id))) & ($true != ((X78 @ (lam @ X79)))) & ! [X82 : (subst > term > term)] : (? [X83 : term] : ((((X80 @ id @ (X82 @ id @ X83) @ id)) != $true) & (((X80 @ id @ X83 @ id)) = $true)) | ($true = ((X80 @ id @ (lam @ (X82 @ sh @ one)) @ id))) | ? [X86 : subst,X84 : subst,X85 : term] : (((sub @ (X82 @ X84 @ X85) @ X86)) != ((X82 @ (comp @ X84 @ X86) @ (sub @ X85 @ X86))))) & ! [X87 : term] : (($true != ((X78 @ X87))) | (((X78 @ (sub @ X79 @ (push @ X87 @ id)))) = $true)))) & (! [X80 : (subst > term > subst > $o),X78 : (term > $o),X79 : term] : (? [X81 : term] : (((X78 @ X81)) != ((X80 @ id @ X81 @ id))) | ($true = ((X78 @ (lam @ X79)))) | ? [X82 : (subst > term > term)] : (! [X83 : term] : ((((X80 @ id @ (X82 @ id @ X83) @ id)) = $true) | (((X80 @ id @ X83 @ id)) != $true)) & ($true != ((X80 @ id @ (lam @ (X82 @ sh @ one)) @ id))) & ! [X86 : subst,X84 : subst,X85 : term] : (((sub @ (X82 @ X84 @ X85) @ X86)) = ((X82 @ (comp @ X84 @ X86) @ (sub @ X85 @ X86))))) | ? [X87 : term] : (($true = ((X78 @ X87))) & (((X78 @ (sub @ X79 @ (push @ X87 @ id)))) != $true))) | (hoasinduction_lem3v2a != $true))) & (pushprop_lem2v2 = $true) & (((hoasinduction_no_psi_cond_lthm = $true) | (! [X447 : term,X446 : (term > $o)] : (? [X448 : term,X449 : term] : (($true = ((X446 @ X448))) & ($true != ((X446 @ (ap @ X449 @ X448)))) & ($true = ((X446 @ X449)))) | ? [X452 : term] : (($true != ((X446 @ X452))) & (((var @ X452)) = $true)) | ? [X450 : term] : (($true != ((X446 @ (lam @ X450)))) & ! [X451 : term] : (($true != ((X446 @ X451))) | ($true = ((X446 @ (sub @ X450 @ (push @ X451 @ id))))))) | (((X446 @ X447)) = $true)) & ($true != sP4) & ! [X443 : (subst > term > subst > $o)] : ? [X444 : (term > $o)] : ! [X445 : term] : (((X443 @ id @ X445 @ id)) = ((X444 @ X445))) & ! [X456 : term,X455 : (subst > term > subst > $o),X454 : (term > $o)] : (? [X459 : (subst > term > term)] : (($true != ((X455 @ id @ (lam @ (X459 @ sh @ one)) @ id))) & ! [X460 : term] : (($true != ((X455 @ id @ X460 @ id))) | ($true = ((X455 @ id @ (X459 @ id @ X460) @ id)))) & ! [X461 : subst,X463 : term,X462 : subst] : (((X459 @ (comp @ X462 @ X461) @ (sub @ X463 @ X461))) = ((sub @ (X459 @ X462 @ X463) @ X461)))) | ? [X458 : term] : (($true != ((X454 @ (sub @ X456 @ (push @ X458 @ id))))) & ($true = ((X454 @ X458)))) | ($true = ((X454 @ (lam @ X456)))) | ? [X457 : term] : (((X454 @ X457)) != ((X455 @ id @ X457 @ id)))) & ! [X453 : term] : (((sub @ X453 @ id)) = X453))) & ((? [X447 : term,X446 : (term > $o)] : (! [X448 : term,X449 : term] : (($true != ((X446 @ X448))) | ($true = ((X446 @ (ap @ X449 @ X448)))) | ($true != ((X446 @ X449)))) & ! [X452 : term] : (($true = ((X446 @ X452))) | (((var @ X452)) != $true)) & ! [X450 : term] : (($true = ((X446 @ (lam @ X450)))) | ? [X451 : term] : (($true = ((X446 @ X451))) & ($true != ((X446 @ (sub @ X450 @ (push @ X451 @ id))))))) & (((X446 @ X447)) != $true)) | ($true = sP4) | ? [X443 : (subst > term > subst > $o)] : ! [X444 : (term > $o)] : ? [X445 : term] : (((X443 @ id @ X445 @ id)) != ((X444 @ X445))) | ? [X456 : term,X455 : (subst > term > subst > $o),X454 : (term > $o)] : (! [X459 : (subst > term > term)] : (($true = ((X455 @ id @ (lam @ (X459 @ sh @ one)) @ id))) | ? [X460 : term] : (($true = ((X455 @ id @ X460 @ id))) & ($true != ((X455 @ id @ (X459 @ id @ X460) @ id)))) | ? [X461 : subst,X463 : term,X462 : subst] : (((X459 @ (comp @ X462 @ X461) @ (sub @ X463 @ X461))) != ((sub @ (X459 @ X462 @ X463) @ X461)))) & ! [X458 : term] : (($true = ((X454 @ (sub @ X456 @ (push @ X458 @ id))))) | ($true != ((X454 @ X458)))) & ($true != ((X454 @ (lam @ X456)))) & ! [X457 : term] : (((X454 @ X457)) = ((X455 @ id @ X457 @ id)))) | ? [X453 : term] : (((sub @ X453 @ id)) != X453)) | (hoasinduction_no_psi_cond_lthm != $true))) & (hoaslaminj_gthm = $true) & (pushprop_lthm_orig = $true) & (induction2_gthm = $true) & (((hoasinduction_lem3 = $true) | ? [X60 : (subst > term > subst > $o),X61 : term] : (! [X62 : (subst > term > term)] : ((((X60 @ id @ (lam @ (X62 @ sh @ one)) @ id)) = $true) | ? [X65 : subst,X64 : subst,X63 : term] : (((sub @ (X62 @ X64 @ X63) @ X65)) != ((X62 @ (comp @ X64 @ X65) @ (sub @ X63 @ X65)))) | ? [X66 : term] : (($true != ((X60 @ id @ (X62 @ id @ X66) @ id))) & ($true = ((X60 @ id @ X66 @ id))))) & ! [X73 : subst,X71 : subst,X74 : subst,X72 : term] : ((((X60 @ X73 @ X72 @ (comp @ X74 @ X71))) != $true) | ($true = ((X60 @ (comp @ X73 @ X74) @ (sub @ X72 @ X74) @ X71)))) & ! [X68 : subst,X69 : subst,X70 : subst,X67 : term] : (($true = ((X60 @ X68 @ X67 @ (comp @ X69 @ X70)))) | (((X60 @ (comp @ X68 @ X69) @ (sub @ X67 @ X69) @ X70)) != $true)) & ! [X75 : term] : ((((X60 @ id @ X75 @ id)) != $true) | (((X60 @ id @ (sub @ X61 @ (push @ X75 @ id)) @ id)) = $true)) & ($true != ((X60 @ id @ (lam @ X61) @ id))))) & (! [X60 : (subst > term > subst > $o),X61 : term] : (? [X62 : (subst > term > term)] : ((((X60 @ id @ (lam @ (X62 @ sh @ one)) @ id)) != $true) & ! [X65 : subst,X64 : subst,X63 : term] : (((sub @ (X62 @ X64 @ X63) @ X65)) = ((X62 @ (comp @ X64 @ X65) @ (sub @ X63 @ X65)))) & ! [X66 : term] : (($true = ((X60 @ id @ (X62 @ id @ X66) @ id))) | ($true != ((X60 @ id @ X66 @ id))))) | ? [X73 : subst,X71 : subst,X74 : subst,X72 : term] : ((((X60 @ X73 @ X72 @ (comp @ X74 @ X71))) = $true) & ($true != ((X60 @ (comp @ X73 @ X74) @ (sub @ X72 @ X74) @ X71)))) | ? [X68 : subst,X69 : subst,X70 : subst,X67 : term] : (($true != ((X60 @ X68 @ X67 @ (comp @ X69 @ X70)))) & (((X60 @ (comp @ X68 @ X69) @ (sub @ X67 @ X69) @ X70)) = $true)) | ? [X75 : term] : ((((X60 @ id @ X75 @ id)) = $true) & (((X60 @ id @ (sub @ X61 @ (push @ X75 @ id)) @ id)) != $true)) | ($true = ((X60 @ id @ (lam @ X61) @ id)))) | (hoasinduction_lem3 != $true))) & (((hoasinduction_lem0_lthm = $true) | ? [X504 : (subst > term > subst > $o)] : ! [X505 : (term > $o)] : ? [X506 : term] : (((X505 @ X506)) != ((X504 @ id @ X506 @ id)))) & (! [X504 : (subst > term > subst > $o)] : ? [X505 : (term > $o)] : ! [X506 : term] : (((X505 @ X506)) = ((X504 @ id @ X506 @ id))) | (hoasinduction_lem0_lthm != $true))) & (hoasinduction_lem1 = $true) & (((? [X110 : term,X109 : subst] : (((comp @ sh @ (push @ X110 @ X109))) != X109) | ! [X111 : term,X112 : (term > $o),X113 : (term > $o),X115 : subst,X114 : term] : (($true != ((X112 @ X111))) | (((X113 @ (sub @ X111 @ (push @ X114 @ X115)))) = $true)) | ? [X107 : term,X108 : subst] : (((sub @ one @ (push @ X107 @ X108))) != X107)) | (pushprop_lem1_lthm != $true)) & ((pushprop_lem1_lthm = $true) | (! [X110 : term,X109 : subst] : (((comp @ sh @ (push @ X110 @ X109))) = X109) & ? [X111 : term,X112 : (term > $o),X113 : (term > $o),X115 : subst,X114 : term] : (($true = ((X112 @ X111))) & (((X113 @ (sub @ X111 @ (push @ X114 @ X115)))) != $true)) & ! [X107 : term,X108 : subst] : (((sub @ one @ (push @ X107 @ X108))) = X107)))) & (((d2subst @ d_id)) = ((push @ (d2term @ d_one) @ (d2subst @ d_id)))) & (ulamvarsh = $true) & (((shinj = $true) | ? [X296 : term,X295 : term] : ((((sub @ X295 @ sh)) = ((sub @ X296 @ sh))) & (X295 != X296))) & (! [X296 : term,X295 : term] : ((((sub @ X295 @ sh)) != ((sub @ X296 @ sh))) | (X295 = X296)) | (shinj != $true))) & (pushprop_lem1_gthm = $true) & (((induction = $true) | ? [X524 : (term > $o),X523 : term] : (! [X525 : term] : (($true = ((X524 @ (lam @ X525)))) | ($true != ((X524 @ X525)))) & ! [X528 : term] : ((((X524 @ X528)) = $true) | (((var @ X528)) != $true)) & ! [X527 : term,X526 : term] : ((((X524 @ X526)) != $true) | ($true != ((X524 @ X527))) | ($true = ((X524 @ (ap @ X526 @ X527))))) & (((X524 @ X523)) != $true))) & (! [X524 : (term > $o),X523 : term] : (? [X525 : term] : (($true != ((X524 @ (lam @ X525)))) & ($true = ((X524 @ X525)))) | ? [X528 : term] : ((((X524 @ X528)) != $true) & (((var @ X528)) = $true)) | ? [X527 : term,X526 : term] : ((((X524 @ X526)) = $true) & ($true = ((X524 @ X527))) & ($true != ((X524 @ (ap @ X526 @ X527))))) | (((X524 @ X523)) = $true)) | (induction != $true))) & (((axidr = $true) | ? [X8 : subst] : (((comp @ X8 @ id)) != X8)) & (! [X8 : subst] : (((comp @ X8 @ id)) = X8) | (axidr != $true))) & ! [X498 : subst] : ? [X499 : d_subst] : (((d2subst @ X499)) = X498) & (pushprop = $true) & ((! [X18 : (subst > term > subst > $o),X17 : term] : (? [X26 : (subst > term > term)] : (! [X28 : subst,X29 : term,X27 : subst] : (((X26 @ (comp @ X27 @ X28) @ (sub @ X29 @ X28))) = ((sub @ (X26 @ X27 @ X29) @ X28))) & ! [X30 : term] : ((((X18 @ id @ (X26 @ id @ X30) @ id)) = $true) | ($true != ((X18 @ id @ X30 @ id)))) & ($true != ((X18 @ id @ (lam @ (X26 @ sh @ one)) @ id)))) | ? [X21 : term] : ((((X18 @ id @ X21 @ id)) != $true) & ($true = ((var @ (sub @ X21 @ id))))) | ($true = ((X18 @ id @ X17 @ id))) | ($true = ((sP3 @ X18))) | ? [X22 : subst,X23 : subst,X25 : term,X24 : subst] : (($true = ((X18 @ X22 @ X25 @ (comp @ X24 @ X23)))) & (((X18 @ (comp @ X22 @ X24) @ (sub @ X25 @ X24) @ X23)) != $true)) | ? [X31 : subst,X34 : subst,X33 : subst,X32 : term] : (($true != ((X18 @ X31 @ X32 @ (comp @ X33 @ X34)))) & ($true = ((X18 @ (comp @ X31 @ X33) @ (sub @ X32 @ X33) @ X34))))) | (hoasinduction != $true)) & ((hoasinduction = $true) | ? [X18 : (subst > term > subst > $o),X17 : term] : (! [X26 : (subst > term > term)] : (? [X28 : subst,X29 : term,X27 : subst] : (((X26 @ (comp @ X27 @ X28) @ (sub @ X29 @ X28))) != ((sub @ (X26 @ X27 @ X29) @ X28))) | ? [X30 : term] : ((((X18 @ id @ (X26 @ id @ X30) @ id)) != $true) & ($true = ((X18 @ id @ X30 @ id)))) | ($true = ((X18 @ id @ (lam @ (X26 @ sh @ one)) @ id)))) & ! [X21 : term] : ((((X18 @ id @ X21 @ id)) = $true) | ($true != ((var @ (sub @ X21 @ id))))) & ($true != ((X18 @ id @ X17 @ id))) & ($true != ((sP3 @ X18))) & ! [X22 : subst,X23 : subst,X25 : term,X24 : subst] : (($true != ((X18 @ X22 @ X25 @ (comp @ X24 @ X23)))) | (((X18 @ (comp @ X22 @ X24) @ (sub @ X25 @ X24) @ X23)) = $true)) & ! [X31 : subst,X34 : subst,X33 : subst,X32 : term] : (($true = ((X18 @ X31 @ X32 @ (comp @ X33 @ X34)))) | ($true != ((X18 @ (comp @ X31 @ X33) @ (sub @ X32 @ X33) @ X34))))))) & ! [X398 : d_term,X397 : d_term] : ((X397 = X398) | (((d2term @ X398)) != ((d2term @ X397)))) & (hoasinduction_gthm = $true) & (((hoasinduction_lem3a = $true) | ? [X287 : (subst > term > subst > $o),X288 : term] : ((((X287 @ id @ (lam @ X288) @ id)) != $true) & ! [X289 : (subst > term > term)] : ((((X287 @ id @ (lam @ (X289 @ sh @ one)) @ id)) = $true) | ? [X290 : term] : ((((X287 @ id @ (X289 @ id @ X290) @ id)) != $true) & (((X287 @ id @ X290 @ id)) = $true)) | ? [X293 : term,X291 : subst,X292 : subst] : (((sub @ (X289 @ X292 @ X293) @ X291)) != ((X289 @ (comp @ X292 @ X291) @ (sub @ X293 @ X291))))) & ! [X294 : term] : (($true = ((X287 @ id @ (sub @ X288 @ (push @ X294 @ id)) @ id))) | (((X287 @ id @ X294 @ id)) != $true)))) & (! [X287 : (subst > term > subst > $o),X288 : term] : ((((X287 @ id @ (lam @ X288) @ id)) = $true) | ? [X289 : (subst > term > term)] : ((((X287 @ id @ (lam @ (X289 @ sh @ one)) @ id)) != $true) & ! [X290 : term] : ((((X287 @ id @ (X289 @ id @ X290) @ id)) = $true) | (((X287 @ id @ X290 @ id)) != $true)) & ! [X293 : term,X291 : subst,X292 : subst] : (((sub @ (X289 @ X292 @ X293) @ X291)) = ((X289 @ (comp @ X292 @ X291) @ (sub @ X293 @ X291))))) | ? [X294 : term] : (($true != ((X287 @ id @ (sub @ X288 @ (push @ X294 @ id)) @ id))) & (((X287 @ id @ X294 @ id)) = $true))) | (hoasinduction_lem3a != $true))) & (axclos = $true) & (hoasinduction_lem2_gthm = $true) & ((! [X11 : term,X10 : (term > $o)] : (? [X12 : term] : (($true != ((X10 @ X12))) & (((var @ X12)) = $true)) | ? [X13 : term,X14 : term] : ((((X10 @ X14)) = $true) & ($true != ((X10 @ (ap @ X14 @ X13)))) & (((X10 @ X13)) = $true)) | ($true = ((X10 @ X11))) | ? [X15 : term] : (! [X16 : term] : ((((X10 @ X16)) != $true) | ($true = ((X10 @ (sub @ X15 @ (push @ X16 @ id)))))) & (((X10 @ (lam @ X15))) != $true))) | (induction2 != $true)) & ((induction2 = $true) | ? [X11 : term,X10 : (term > $o)] : (! [X12 : term] : (($true = ((X10 @ X12))) | (((var @ X12)) != $true)) & ! [X13 : term,X14 : term] : ((((X10 @ X14)) != $true) | ($true = ((X10 @ (ap @ X14 @ X13)))) | (((X10 @ X13)) != $true)) & ($true != ((X10 @ X11))) & ! [X15 : term] : (? [X16 : term] : ((((X10 @ X16)) = $true) & ($true != ((X10 @ (sub @ X15 @ (push @ X16 @ id)))))) | (((X10 @ (lam @ X15))) = $true))))) & (((induction2lem_lthm = $true) | ($true != sP2)) & (($true = sP2) | (induction2lem_lthm != $true))) & ((! [X191 : term,X189 : subst,X190 : (term > $o)] : ? [X192 : (term > $o)] : ! [X193 : term] : (((X190 @ (sub @ X193 @ (push @ X191 @ X189)))) = ((X192 @ X193))) | (pushprop_lem0_lthm != $true)) & ((pushprop_lem0_lthm = $true) | ? [X191 : term,X189 : subst,X190 : (term > $o)] : ! [X192 : (term > $o)] : ? [X193 : term] : (((X190 @ (sub @ X193 @ (push @ X191 @ X189)))) != ((X192 @ X193))))) & (hoasinduction_lem3b_gthm = $true) & (hoaslamnotvar_gthm = $true) & ((! [X516 : term] : ? [X517 : (subst > term > term)] : ! [X519 : subst,X518 : term] : (((sub @ X516 @ (push @ X518 @ X519))) = ((X517 @ X519 @ X518))) | (hoasinduction_lem3v2_f != $true)) & ((hoasinduction_lem3v2_f = $true) | ? [X516 : term] : ! [X517 : (subst > term > term)] : ? [X519 : subst,X518 : term] : (((sub @ X516 @ (push @ X518 @ X519))) != ((X517 @ X519 @ X518))))) & (((hoasinduction_lthm_3 = $true) | (! [X153 : (term > $o),X154 : term] : (? [X159 : term] : (($true != ((X153 @ X159))) & ($true = ((var @ X159)))) | ($true = ((X153 @ X154))) | ? [X157 : term] : ((((X153 @ (lam @ X157))) != $true) & ! [X158 : term] : (($true != ((X153 @ X158))) | (((X153 @ (sub @ X157 @ (push @ X158 @ id)))) = $true))) | ? [X155 : term,X156 : term] : ((((X153 @ X155)) = $true) & ($true != ((X153 @ (ap @ X156 @ X155)))) & ($true = ((X153 @ X156))))) & ! [X150 : (subst > term > subst > $o)] : ? [X151 : (term > $o)] : ! [X152 : term] : (((X150 @ id @ X152 @ id)) = ((X151 @ X152))) & (sP1 != $true) & ! [X160 : term] : (((sub @ X160 @ id)) = X160) & ! [X162 : term,X163 : (subst > term > subst > $o),X161 : (term > $o)] : (? [X170 : term] : (((X161 @ X170)) != ((X163 @ id @ X170 @ id))) | ? [X164 : (subst > term > term)] : (($true != ((X163 @ id @ (lam @ (X164 @ sh @ one)) @ id))) & ! [X167 : subst,X166 : subst,X165 : term] : (((sub @ (X164 @ X166 @ X165) @ X167)) = ((X164 @ (comp @ X166 @ X167) @ (sub @ X165 @ X167)))) & ! [X168 : term] : ((((X163 @ id @ X168 @ id)) != $true) | (((X163 @ id @ (X164 @ id @ X168) @ id)) = $true))) | (((X161 @ (lam @ X162))) = $true) | ? [X169 : term] : (($true = ((X161 @ X169))) & (((X161 @ (sub @ X162 @ (push @ X169 @ id)))) != $true))))) & ((? [X153 : (term > $o),X154 : term] : (! [X159 : term] : (($true = ((X153 @ X159))) | ($true != ((var @ X159)))) & ($true != ((X153 @ X154))) & ! [X157 : term] : ((((X153 @ (lam @ X157))) = $true) | ? [X158 : term] : (($true = ((X153 @ X158))) & (((X153 @ (sub @ X157 @ (push @ X158 @ id)))) != $true))) & ! [X155 : term,X156 : term] : ((((X153 @ X155)) != $true) | ($true = ((X153 @ (ap @ X156 @ X155)))) | ($true != ((X153 @ X156))))) | ? [X150 : (subst > term > subst > $o)] : ! [X151 : (term > $o)] : ? [X152 : term] : (((X150 @ id @ X152 @ id)) != ((X151 @ X152))) | (sP1 = $true) | ? [X160 : term] : (((sub @ X160 @ id)) != X160) | ? [X162 : term,X163 : (subst > term > subst > $o),X161 : (term > $o)] : (! [X170 : term] : (((X161 @ X170)) = ((X163 @ id @ X170 @ id))) & ! [X164 : (subst > term > term)] : (($true = ((X163 @ id @ (lam @ (X164 @ sh @ one)) @ id))) | ? [X167 : subst,X166 : subst,X165 : term] : (((sub @ (X164 @ X166 @ X165) @ X167)) != ((X164 @ (comp @ X166 @ X167) @ (sub @ X165 @ X167)))) | ? [X168 : term] : ((((X163 @ id @ X168 @ id)) = $true) & (((X163 @ id @ (X164 @ id @ X168) @ id)) != $true))) & (((X161 @ (lam @ X162))) != $true) & ! [X169 : term] : (($true != ((X161 @ X169))) | (((X161 @ (sub @ X162 @ (push @ X169 @ id)))) = $true)))) | (hoasinduction_lthm_3 != $true))) & (((d2term @ d_one)) = ((hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one)))) & (((pushprop_lem1v2_lthm = $true) | (? [X402 : subst,X401 : (term > $o),X404 : term,X403 : (term > $o)] : ((((X401 @ X404)) = $true) & ! [X405 : term] : (((X403 @ X405)) = ((X401 @ (sub @ X405 @ (push @ X404 @ X402))))) & ($true != ((X403 @ one)))) & ! [X400 : subst,X399 : term] : (((sub @ one @ (push @ X399 @ X400))) = X399))) & ((! [X402 : subst,X401 : (term > $o),X404 : term,X403 : (term > $o)] : ((((X401 @ X404)) != $true) | ? [X405 : term] : (((X403 @ X405)) != ((X401 @ (sub @ X405 @ (push @ X404 @ X402))))) | ($true = ((X403 @ one)))) | ? [X400 : subst,X399 : term] : (((sub @ one @ (push @ X399 @ X400))) != X399)) | (pushprop_lem1v2_lthm != $true))) & ! [X35 : d_subst] : (d_id = X35) & (((! [X515 : term,X512 : term,X514 : term,X513 : term] : ((((ap @ (sub @ X513 @ id) @ X514)) != ((ap @ (sub @ X515 @ id) @ X512))) | (X513 = X515)) | ? [X510 : term,X511 : term,X508 : term,X509 : term] : ((((ap @ X511 @ X509)) = ((ap @ X508 @ X510))) & (X508 != X511)) | ? [X507 : term] : (((sub @ X507 @ id)) != X507)) | (hoasapinj1_lthm != $true)) & ((hoasapinj1_lthm = $true) | (? [X515 : term,X512 : term,X514 : term,X513 : term] : ((((ap @ (sub @ X513 @ id) @ X514)) = ((ap @ (sub @ X515 @ id) @ X512))) & (X513 != X515)) & ! [X510 : term,X511 : term,X508 : term,X509 : term] : ((((ap @ X511 @ X509)) != ((ap @ X508 @ X510))) | (X508 = X511)) & ! [X507 : term] : (((sub @ X507 @ id)) = X507)))) & (((d2term @ d_one)) = one) & (apnotvar = $true) & (axabs = $true) & (((pushprop_lem1v2 = $true) | ? [X284 : subst,X282 : (term > $o),X285 : term,X283 : (term > $o)] : (($true != ((X282 @ one))) & ! [X286 : term] : (((X282 @ X286)) = ((X283 @ (sub @ X286 @ (push @ X285 @ X284))))) & (((X283 @ X285)) = $true))) & (! [X284 : subst,X282 : (term > $o),X285 : term,X283 : (term > $o)] : (($true = ((X282 @ one))) | ? [X286 : term] : (((X282 @ X286)) != ((X283 @ (sub @ X286 @ (push @ X285 @ X284))))) | (((X283 @ X285)) != $true)) | (pushprop_lem1v2 != $true))) & ((! [X494 : term,X493 : term,X492 : term,X495 : term] : ((((ap @ X492 @ X494)) != ((ap @ X493 @ X495))) | (X494 = X495)) | (apinj2 != $true)) & ((apinj2 = $true) | ? [X494 : term,X493 : term,X492 : term,X495 : term] : ((((ap @ X492 @ X494)) = ((ap @ X493 @ X495))) & (X494 != X495)))) & (hoasinduction_lem1v2_gthm = $true) & ((! [X491 : term,X490 : term] : ((X490 = X491) | (((lam @ X490)) != ((lam @ X491)))) | (laminj != $true)) & ((laminj = $true) | ? [X491 : term,X490 : term] : ((X490 != X491) & (((lam @ X490)) = ((lam @ X491)))))) & (pushprop_lem2v2_gthm = $true) & (ulamvarind = $true) & (((hoaslamnotap = $true) | ? [X482 : (subst > term > term),X480 : term,X481 : term] : ((((ap @ (sub @ X481 @ id) @ X480)) = ((lam @ (X482 @ sh @ one)))) & ! [X485 : subst,X484 : subst,X483 : term] : (((sub @ (X482 @ X484 @ X483) @ X485)) = ((X482 @ (comp @ X484 @ X485) @ (sub @ X483 @ X485)))))) & (! [X482 : (subst > term > term),X480 : term,X481 : term] : ((((ap @ (sub @ X481 @ id) @ X480)) != ((lam @ (X482 @ sh @ one)))) | ? [X485 : subst,X484 : subst,X483 : term] : (((sub @ (X482 @ X484 @ X483) @ X485)) != ((X482 @ (comp @ X484 @ X485) @ (sub @ X483 @ X485))))) | (hoaslamnotap != $true))) & ((! [X369 : term] : ? [X370 : (subst > term > term)] : ! [X371 : subst,X372 : term] : (((X370 @ X371 @ X372)) = ((sub @ X369 @ (push @ X372 @ X371)))) | (hoasinduction_lem3v2_f_lthm != $true)) & ((hoasinduction_lem3v2_f_lthm = $true) | ? [X369 : term] : ! [X370 : (subst > term > term)] : ? [X371 : subst,X372 : term] : (((X370 @ X371 @ X372)) != ((sub @ X369 @ (push @ X372 @ X371)))))) & (hoaslamnotvar_lthm = $true) & (((hoasinduction_lem3b_lthm = $true) | ? [X373 : term] : ! [X374 : (subst > term > term)] : (((sub @ X373 @ (push @ one @ sh))) != ((X374 @ sh @ one)))) & (! [X373 : term] : ? [X374 : (subst > term > term)] : (((sub @ X373 @ (push @ one @ sh))) = ((X374 @ sh @ one))) | (hoasinduction_lem3b_lthm != $true))) & ((! [X412 : (subst > term > subst > $o),X411 : term] : ((((X412 @ id @ (lam @ (sub @ X411 @ (push @ one @ sh))) @ id)) = $true) | ? [X413 : term] : ((((X412 @ id @ (sub @ X411 @ (push @ X413 @ id)) @ id)) != $true) & (((X412 @ id @ X413 @ id)) = $true)) | ? [X414 : term,X415 : (subst > term > term)] : ((((X412 @ id @ (lam @ (X415 @ sh @ one)) @ id)) != $true) & ! [X419 : subst,X417 : term,X418 : subst] : (((sub @ (X415 @ X419 @ X417) @ X418)) = ((sub @ (sub @ X414 @ (push @ X417 @ X419)) @ X418))) & ! [X422 : subst,X420 : term,X421 : subst] : (((sub @ X414 @ (push @ (sub @ X420 @ X421) @ (comp @ X422 @ X421)))) = ((X415 @ (comp @ X422 @ X421) @ (sub @ X420 @ X421)))) & ! [X416 : term] : (($true != ((X412 @ id @ X416 @ id))) | ($true = ((X412 @ id @ (X415 @ id @ X416) @ id)))))) | (hoasinduction_lem3aaa != $true)) & ((hoasinduction_lem3aaa = $true) | ? [X412 : (subst > term > subst > $o),X411 : term] : ((((X412 @ id @ (lam @ (sub @ X411 @ (push @ one @ sh))) @ id)) != $true) & ! [X413 : term] : ((((X412 @ id @ (sub @ X411 @ (push @ X413 @ id)) @ id)) = $true) | (((X412 @ id @ X413 @ id)) != $true)) & ! [X414 : term,X415 : (subst > term > term)] : ((((X412 @ id @ (lam @ (X415 @ sh @ one)) @ id)) = $true) | ? [X419 : subst,X417 : term,X418 : subst] : (((sub @ (X415 @ X419 @ X417) @ X418)) != ((sub @ (sub @ X414 @ (push @ X417 @ X419)) @ X418))) | ? [X422 : subst,X420 : term,X421 : subst] : (((sub @ X414 @ (push @ (sub @ X420 @ X421) @ (comp @ X422 @ X421)))) != ((X415 @ (comp @ X422 @ X421) @ (sub @ X420 @ X421)))) | ? [X416 : term] : (($true = ((X412 @ id @ X416 @ id))) & ($true != ((X412 @ id @ (X415 @ id @ X416) @ id)))))))) & (((axshiftcons = $true) | ? [X396 : term,X395 : subst] : (((comp @ sh @ (push @ X396 @ X395))) != X395)) & (! [X396 : term,X395 : subst] : (((comp @ sh @ (push @ X396 @ X395))) = X395) | (axshiftcons != $true))) & (ulamvar1 != $true) & (((substmonoid = $true) | (? [X77 : subst] : (((comp @ X77 @ id)) != X77) | ? [X76 : subst] : (((comp @ id @ X76)) != X76))) & ((! [X77 : subst] : (((comp @ X77 @ id)) = X77) & ! [X76 : subst] : (((comp @ id @ X76)) = X76)) | (substmonoid != $true))) & (hoasapinj2_gthm = $true) & (((! [X387 : (term > $o),X386 : term,X385 : (subst > term > subst > $o)] : (($true = ((X387 @ (lam @ X386)))) | ? [X390 : (subst > term > term)] : (! [X392 : subst,X391 : term,X393 : subst] : (((X390 @ (comp @ X393 @ X392) @ (sub @ X391 @ X392))) = ((sub @ (X390 @ X393 @ X391) @ X392))) & ($true != ((X385 @ id @ (lam @ (X390 @ sh @ one)) @ id))) & ! [X394 : term] : (($true = ((X385 @ id @ (X390 @ id @ X394) @ id))) | (((X385 @ id @ X394 @ id)) != $true))) | ? [X388 : term] : ((((X387 @ X388)) = $true) & (((X387 @ (sub @ X386 @ (push @ X388 @ id)))) != $true)) | ? [X389 : term] : (((X387 @ X389)) != ((X385 @ id @ X389 @ id)))) | ? [X384 : term] : (((sub @ X384 @ id)) != X384) | ? [X380 : term] : ! [X381 : (subst > term > term)] : ? [X382 : subst,X383 : term] : (((sub @ X380 @ (push @ X383 @ X382))) != ((X381 @ X382 @ X383)))) | (hoasinduction_lem3v2a_lthm != $true)) & ((hoasinduction_lem3v2a_lthm = $true) | (? [X387 : (term > $o),X386 : term,X385 : (subst > term > subst > $o)] : (($true != ((X387 @ (lam @ X386)))) & ! [X390 : (subst > term > term)] : (? [X392 : subst,X391 : term,X393 : subst] : (((X390 @ (comp @ X393 @ X392) @ (sub @ X391 @ X392))) != ((sub @ (X390 @ X393 @ X391) @ X392))) | ($true = ((X385 @ id @ (lam @ (X390 @ sh @ one)) @ id))) | ? [X394 : term] : (($true != ((X385 @ id @ (X390 @ id @ X394) @ id))) & (((X385 @ id @ X394 @ id)) = $true))) & ! [X388 : term] : ((((X387 @ X388)) != $true) | (((X387 @ (sub @ X386 @ (push @ X388 @ id)))) = $true)) & ! [X389 : term] : (((X387 @ X389)) = ((X385 @ id @ X389 @ id)))) & ! [X384 : term] : (((sub @ X384 @ id)) = X384) & ! [X380 : term] : ? [X381 : (subst > term > term)] : ! [X382 : subst,X383 : term] : (((sub @ X380 @ (push @ X383 @ X382))) = ((X381 @ X382 @ X383)))))) & ((! [X331 : (subst > term > subst > $o),X330 : term] : ((((X331 @ id @ (lam @ (sub @ X330 @ (push @ one @ sh))) @ id)) = $true) | ? [X332 : (subst > term > term)] : (! [X336 : term,X334 : subst,X335 : subst] : (((X332 @ (comp @ X334 @ X335) @ (sub @ X336 @ X335))) = ((sub @ (X332 @ X334 @ X336) @ X335))) & ($true != ((X331 @ id @ (lam @ (X332 @ sh @ one)) @ id))) & ! [X333 : term] : (($true != ((X331 @ id @ X333 @ id))) | ($true = ((X331 @ id @ (X332 @ id @ X333) @ id))))) | ? [X337 : term] : (($true = ((X331 @ id @ X337 @ id))) & ($true != ((X331 @ id @ (sub @ X330 @ (push @ X337 @ id)) @ id))))) | (hoasinduction_lem3aa_lthm != $true)) & ((hoasinduction_lem3aa_lthm = $true) | ? [X331 : (subst > term > subst > $o),X330 : term] : ((((X331 @ id @ (lam @ (sub @ X330 @ (push @ one @ sh))) @ id)) != $true) & ! [X332 : (subst > term > term)] : (? [X336 : term,X334 : subst,X335 : subst] : (((X332 @ (comp @ X334 @ X335) @ (sub @ X336 @ X335))) != ((sub @ (X332 @ X334 @ X336) @ X335))) | ($true = ((X331 @ id @ (lam @ (X332 @ sh @ one)) @ id))) | ? [X333 : term] : (($true = ((X331 @ id @ X333 @ id))) & ($true != ((X331 @ id @ (X332 @ id @ X333) @ id))))) & ! [X337 : term] : (($true != ((X331 @ id @ X337 @ id))) | ($true = ((X331 @ id @ (sub @ X330 @ (push @ X337 @ id)) @ id))))))) & ((! [X500 : term,X502 : term,X503 : term,X501 : term] : ((X502 = X503) | (((ap @ (sub @ X502 @ id) @ X501)) != ((ap @ (sub @ X503 @ id) @ X500)))) | (hoasapinj1 != $true)) & ((hoasapinj1 = $true) | ? [X500 : term,X502 : term,X503 : term,X501 : term] : ((X502 != X503) & (((ap @ (sub @ X502 @ id) @ X501)) = ((ap @ (sub @ X503 @ id) @ X500)))))) & (hoasinduction_lem3a_gthm = $true) & ((! [X54 : term,X52 : (term > $o),X53 : subst] : (? [X58 : term] : (! [X59 : term] : (($true != ((X52 @ X59))) | ($true = ((X52 @ (sub @ X58 @ (push @ X59 @ id)))))) & (((X52 @ (lam @ X58))) != $true)) | ? [X56 : term,X57 : term] : ((((X52 @ X56)) = $true) & ($true = ((X52 @ X57))) & ($true != ((X52 @ (ap @ X56 @ X57))))) | ? [X55 : term] : ((((X52 @ (sub @ X55 @ X53))) != $true) & ($true = ((var @ X55)))) | ($true = ((X52 @ (sub @ X54 @ X53))))) | (induction2lem != $true)) & ((induction2lem = $true) | ? [X54 : term,X52 : (term > $o),X53 : subst] : (! [X58 : term] : (? [X59 : term] : (($true = ((X52 @ X59))) & ($true != ((X52 @ (sub @ X58 @ (push @ X59 @ id)))))) | (((X52 @ (lam @ X58))) = $true)) & ! [X56 : term,X57 : term] : ((((X52 @ X56)) != $true) | ($true != ((X52 @ X57))) | ($true = ((X52 @ (ap @ X56 @ X57))))) & ! [X55 : term] : ((((X52 @ (sub @ X55 @ X53))) = $true) | ($true != ((var @ X55)))) & ($true != ((X52 @ (sub @ X54 @ X53))))))) & (hoasinduction_lem2v2_gthm = $true) & (pushprop_lthm = $true) & (lamnotap != $true) & (((d2subst @ d_id)) = id) & ((! [X406 : (term > $o),X408 : term,X409 : (term > $o),X407 : subst,X410 : term] : ((((X406 @ (sub @ X410 @ (push @ X408 @ X407)))) = $true) | ($true != ((X409 @ X410)))) | (pushprop_lem1 != $true)) & ((pushprop_lem1 = $true) | ? [X406 : (term > $o),X408 : term,X409 : (term > $o),X407 : subst,X410 : term] : ((((X406 @ (sub @ X410 @ (push @ X408 @ X407)))) != $true) & ($true = ((X409 @ X410)))))) & (((d2term @ d_one)) = ((ap @ (d2term @ d_one) @ (d2term @ d_one)))) & (axapp = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & (((hoasapinj2 = $true) | ? [X378 : term,X377 : term,X376 : term,X379 : term] : ((X377 != X379) & (((ap @ (sub @ X378 @ id) @ X379)) = ((ap @ (sub @ X376 @ id) @ X377))))) & (! [X378 : term,X377 : term,X376 : term,X379 : term] : ((X377 = X379) | (((ap @ (sub @ X378 @ id) @ X379)) != ((ap @ (sub @ X376 @ id) @ X377)))) | (hoasapinj2 != $true))) & (((d2subst @ d_id)) = sh) & (((d2term @ d_one)) = ((lam @ (d2term @ d_one)))) & ((! [X497 : subst,X496 : term] : (((sub @ one @ (push @ X496 @ X497))) = X496) | (axvarcons != $true)) & ((axvarcons = $true) | ? [X497 : subst,X496 : term] : (((sub @ one @ (push @ X496 @ X497))) != X496))) & ((! [X338 : term] : ? [X339 : (subst > term > term)] : (((X339 @ sh @ one)) = ((sub @ X338 @ (push @ one @ sh)))) | (hoasinduction_lem3b != $true)) & ((hoasinduction_lem3b = $true) | ? [X338 : term] : ! [X339 : (subst > term > term)] : (((X339 @ sh @ one)) != ((sub @ X338 @ (push @ one @ sh)))))) & (((? [X487 : subst] : (((comp @ X487 @ id)) != X487) | ? [X486 : subst] : (((comp @ id @ X486)) != X486) | (! [X489 : subst] : (((comp @ X489 @ id)) = X489) & ! [X488 : subst] : (((comp @ id @ X488)) = X488))) | (substmonoid_lthm != $true)) & ((substmonoid_lthm = $true) | (! [X487 : subst] : (((comp @ X487 @ id)) = X487) & ! [X486 : subst] : (((comp @ id @ X486)) = X486) & (? [X489 : subst] : (((comp @ X489 @ id)) != X489) | ? [X488 : subst] : (((comp @ id @ X488)) != X488))))) & (axassoc = $true) & (lamnotvar = $true) & (pushprop_lem3v2_lthm = $true) & (termmset_gthm = $true) & (((hoasapinj2_lthm = $true) | (! [X313 : term,X315 : term,X316 : term,X314 : term] : ((X315 = X316) | (((ap @ X313 @ X315)) != ((ap @ X314 @ X316)))) & ? [X320 : term,X317 : term,X319 : term,X318 : term] : ((((ap @ (sub @ X320 @ id) @ X318)) = ((ap @ (sub @ X317 @ id) @ X319))) & (X318 != X319)))) & ((? [X313 : term,X315 : term,X316 : term,X314 : term] : ((X315 != X316) & (((ap @ X313 @ X315)) = ((ap @ X314 @ X316)))) | ! [X320 : term,X317 : term,X319 : term,X318 : term] : ((((ap @ (sub @ X320 @ id) @ X318)) != ((ap @ (sub @ X317 @ id) @ X319))) | (X318 = X319))) | (hoasapinj2_lthm != $true))) & (hoasapnotvar = $true) & ! [X474 : d_subst,X473 : d_subst] : ((X473 = X474) | (((d2subst @ X474)) != ((d2subst @ X473)))) & (hoasinduction_lem3_gthm = $true) & (pushprop_lem3v2 = $true) & ((! [X117 : (term > $o),X118 : term,X116 : (subst > term > subst > $o)] : (? [X133 : term] : (((X116 @ id @ X133 @ id)) != ((X117 @ X133))) | ? [X125 : subst,X126 : subst,X128 : subst,X127 : term] : ((((X116 @ (comp @ X125 @ X128) @ (sub @ X127 @ X128) @ X126)) = $true) & ($true != ((X116 @ X125 @ X127 @ (comp @ X128 @ X126))))) | ? [X131 : subst,X132 : term,X129 : subst,X130 : subst] : ((((X116 @ (comp @ X129 @ X130) @ (sub @ X132 @ X130) @ X131)) != $true) & (((X116 @ X129 @ X132 @ (comp @ X130 @ X131))) = $true)) | ($true = ((X117 @ (lam @ X118)))) | ? [X124 : term] : (($true = ((X117 @ X124))) & (((X117 @ (sub @ X118 @ (push @ X124 @ id)))) != $true)) | ? [X119 : (subst > term > term)] : (! [X123 : term] : ((((X116 @ id @ X123 @ id)) != $true) | ($true = ((X116 @ id @ (X119 @ id @ X123) @ id)))) & ($true != ((X116 @ id @ (lam @ (X119 @ sh @ one)) @ id))) & ! [X122 : term,X120 : subst,X121 : subst] : (((X119 @ (comp @ X121 @ X120) @ (sub @ X122 @ X120))) = ((sub @ (X119 @ X121 @ X122) @ X120))))) | (hoasinduction_lem3v2 != $true)) & ((hoasinduction_lem3v2 = $true) | ? [X117 : (term > $o),X118 : term,X116 : (subst > term > subst > $o)] : (! [X133 : term] : (((X116 @ id @ X133 @ id)) = ((X117 @ X133))) & ! [X125 : subst,X126 : subst,X128 : subst,X127 : term] : ((((X116 @ (comp @ X125 @ X128) @ (sub @ X127 @ X128) @ X126)) != $true) | ($true = ((X116 @ X125 @ X127 @ (comp @ X128 @ X126))))) & ! [X131 : subst,X132 : term,X129 : subst,X130 : subst] : ((((X116 @ (comp @ X129 @ X130) @ (sub @ X132 @ X130) @ X131)) = $true) | (((X116 @ X129 @ X132 @ (comp @ X130 @ X131))) != $true)) & ($true != ((X117 @ (lam @ X118)))) & ! [X124 : term] : (($true != ((X117 @ X124))) | (((X117 @ (sub @ X118 @ (push @ X124 @ id)))) = $true)) & ! [X119 : (subst > term > term)] : (? [X123 : term] : ((((X116 @ id @ X123 @ id)) = $true) & ($true != ((X116 @ id @ (X119 @ id @ X123) @ id)))) | ($true = ((X116 @ id @ (lam @ (X119 @ sh @ one)) @ id))) | ? [X122 : term,X120 : subst,X121 : subst] : (((X119 @ (comp @ X121 @ X120) @ (sub @ X122 @ X120))) != ((sub @ (X119 @ X121 @ X122) @ X120))))))) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y1 @ Y2) = (Y0 @ id @ Y2 @ id)))))))) & (hoasinduction_lem3v2_gthm = $true) & ((! [X0 : term,X1 : (subst > term > subst > $o)] : (? [X2 : (subst > term > term)] : ((((X1 @ id @ (lam @ (X2 @ sh @ one)) @ id)) != $true) & ! [X3 : subst,X5 : term,X4 : subst] : (((sub @ (X2 @ X3 @ X5) @ X4)) = ((X2 @ (comp @ X3 @ X4) @ (sub @ X5 @ X4)))) & ! [X6 : term] : ((((X1 @ id @ X6 @ id)) != $true) | (((X1 @ id @ (X2 @ id @ X6) @ id)) = $true))) | ? [X7 : term] : (($true = ((X1 @ id @ X7 @ id))) & (((X1 @ id @ (sub @ X0 @ (push @ X7 @ id)) @ id)) != $true)) | ($true = ((X1 @ id @ (lam @ (sub @ X0 @ (push @ one @ sh))) @ id)))) | (hoasinduction_lem3aa != $true)) & ((hoasinduction_lem3aa = $true) | ? [X0 : term,X1 : (subst > term > subst > $o)] : (! [X2 : (subst > term > term)] : ((((X1 @ id @ (lam @ (X2 @ sh @ one)) @ id)) = $true) | ? [X3 : subst,X5 : term,X4 : subst] : (((sub @ (X2 @ X3 @ X5) @ X4)) != ((X2 @ (comp @ X3 @ X4) @ (sub @ X5 @ X4)))) | ? [X6 : term] : ((((X1 @ id @ X6 @ id)) = $true) & (((X1 @ id @ (X2 @ id @ X6) @ id)) != $true))) & ! [X7 : term] : (($true != ((X1 @ id @ X7 @ id))) | (((X1 @ id @ (sub @ X0 @ (push @ X7 @ id)) @ id)) = $true)) & ($true != ((X1 @ id @ (lam @ (sub @ X0 @ (push @ one @ sh))) @ id)))))) & ! [X149 : d_term] : (d_one = X149) & (hoasinduction_lem1v2 = $true) & (((! [X91 : (subst > term > subst > $o),X89 : term,X90 : (term > $o)] : (? [X106 : subst,X103 : subst,X105 : subst,X104 : term] : (($true != ((X91 @ X106 @ X104 @ (comp @ X103 @ X105)))) & ($true = ((X91 @ (comp @ X106 @ X103) @ (sub @ X104 @ X103) @ X105)))) | ? [X101 : subst,X99 : subst,X102 : term,X100 : subst] : (($true = ((X91 @ X99 @ X102 @ (comp @ X101 @ X100)))) & ($true != ((X91 @ (comp @ X99 @ X101) @ (sub @ X102 @ X101) @ X100)))) | (((X90 @ (lam @ X89))) = $true) | ? [X97 : term] : (((X91 @ id @ X97 @ id)) != ((X90 @ X97))) | ? [X92 : (subst > term > term)] : (! [X96 : term] : ((((X91 @ id @ X96 @ id)) != $true) | ($true = ((X91 @ id @ (X92 @ id @ X96) @ id)))) & ! [X95 : subst,X94 : term,X93 : subst] : (((sub @ (X92 @ X95 @ X94) @ X93)) = ((X92 @ (comp @ X95 @ X93) @ (sub @ X94 @ X93)))) & (((X91 @ id @ (lam @ (X92 @ sh @ one)) @ id)) != $true)) | ? [X98 : term] : (($true != ((X90 @ (sub @ X89 @ (push @ X98 @ id))))) & ($true = ((X90 @ X98))))) | ? [X88 : term] : (((sub @ X88 @ id)) != X88)) | (hoasinduction_lem3v2_lthm != $true)) & ((hoasinduction_lem3v2_lthm = $true) | (? [X91 : (subst > term > subst > $o),X89 : term,X90 : (term > $o)] : (! [X106 : subst,X103 : subst,X105 : subst,X104 : term] : (($true = ((X91 @ X106 @ X104 @ (comp @ X103 @ X105)))) | ($true != ((X91 @ (comp @ X106 @ X103) @ (sub @ X104 @ X103) @ X105)))) & ! [X101 : subst,X99 : subst,X102 : term,X100 : subst] : (($true != ((X91 @ X99 @ X102 @ (comp @ X101 @ X100)))) | ($true = ((X91 @ (comp @ X99 @ X101) @ (sub @ X102 @ X101) @ X100)))) & (((X90 @ (lam @ X89))) != $true) & ! [X97 : term] : (((X91 @ id @ X97 @ id)) = ((X90 @ X97))) & ! [X92 : (subst > term > term)] : (? [X96 : term] : ((((X91 @ id @ X96 @ id)) = $true) & ($true != ((X91 @ id @ (X92 @ id @ X96) @ id)))) | ? [X95 : subst,X94 : term,X93 : subst] : (((sub @ (X92 @ X95 @ X94) @ X93)) != ((X92 @ (comp @ X95 @ X93) @ (sub @ X94 @ X93)))) | (((X91 @ id @ (lam @ (X92 @ sh @ one)) @ id)) = $true)) & ! [X98 : term] : (($true = ((X90 @ (sub @ X89 @ (push @ X98 @ id))))) | ($true != ((X90 @ X98))))) & ! [X88 : term] : (((sub @ X88 @ id)) = X88)))) & (((axidl = $true) | ? [X9 : subst] : (((comp @ id @ X9)) != X9)) & (! [X9 : subst] : (((comp @ id @ X9)) = X9) | (axidl != $true))) & (hoasapnotvar_lthm = $true) & (hoasinduction_lem2_lthm = $true) & ((! [X475 : term,X477 : subst,X476 : (term > $o)] : ? [X478 : (term > $o)] : ! [X479 : term] : (((X476 @ (sub @ X479 @ (push @ X475 @ X477)))) = ((X478 @ X479))) | (pushprop_lem0 != $true)) & ((pushprop_lem0 = $true) | ? [X475 : term,X477 : subst,X476 : (term > $o)] : ! [X478 : (term > $o)] : ? [X479 : term] : (((X476 @ (sub @ X479 @ (push @ X475 @ X477)))) != ((X478 @ X479)))))),
  inference(nnf_transformation,[],[f24])).
thf(f58,plain,(
  (pushprop_gthm = $true) & (? [X344 : term] : (((sub @ X344 @ id)) != X344) | ? [X345 : term,X346 : (subst > term > subst > $o)] : ((((X346 @ id @ (lam @ (sub @ X345 @ (push @ one @ sh))) @ id)) != $true) & ! [X348 : (subst > term > term)] : (? [X349 : term] : (($true != ((X346 @ id @ (X348 @ id @ X349) @ id))) & ($true = ((X346 @ id @ X349 @ id)))) | ? [X351 : subst,X350 : term,X352 : subst] : (((sub @ (X348 @ X352 @ X350) @ X351)) != ((X348 @ (comp @ X352 @ X351) @ (sub @ X350 @ X351)))) | ($true = ((X346 @ id @ (lam @ (X348 @ sh @ one)) @ id)))) & ! [X347 : term] : (($true != ((X346 @ id @ X347 @ id))) | ($true = ((X346 @ id @ (sub @ X345 @ (push @ X347 @ id)) @ id))))) | ($true = sP9) | (hoasinduction_lem3_lthm != $true)) & ((hoasinduction_lem3_lthm = $true) | (! [X344 : term] : (((sub @ X344 @ id)) = X344) & ! [X345 : term,X346 : (subst > term > subst > $o)] : ((((X346 @ id @ (lam @ (sub @ X345 @ (push @ one @ sh))) @ id)) = $true) | ? [X348 : (subst > term > term)] : (! [X349 : term] : (($true = ((X346 @ id @ (X348 @ id @ X349) @ id))) | ($true != ((X346 @ id @ X349 @ id)))) & ! [X351 : subst,X350 : term,X352 : subst] : (((sub @ (X348 @ X352 @ X350) @ X351)) = ((X348 @ (comp @ X352 @ X351) @ (sub @ X350 @ X351)))) & ($true != ((X346 @ id @ (lam @ (X348 @ sh @ one)) @ id)))) | ? [X347 : term] : (($true = ((X346 @ id @ X347 @ id))) & ($true != ((X346 @ id @ (sub @ X345 @ (push @ X347 @ id)) @ id))))) & ($true != sP9))) & (! [X520 : (subst > term > subst > $o)] : ? [X521 : (term > $o)] : ! [X522 : term] : (((X521 @ X522)) = ((X520 @ id @ X522 @ id))) | (hoasinduction_lem0 != $true)) & ((hoasinduction_lem0 = $true) | ? [X520 : (subst > term > subst > $o)] : ! [X521 : (term > $o)] : ? [X522 : term] : (((X521 @ X522)) != ((X520 @ id @ X522 @ id)))) & ((hoaslaminj_lthm = $true) | (? [X304 : subst,X306 : (subst > term > term),X303 : (subst > term > term),X305 : term] : (! [X308 : subst,X309 : subst,X307 : term] : (((sub @ (X303 @ X308 @ X307) @ X309)) = ((X303 @ (comp @ X308 @ X309) @ (sub @ X307 @ X309)))) & (((X306 @ X304 @ X305)) != ((X303 @ X304 @ X305))) & (((lam @ (X303 @ sh @ one))) = ((lam @ (X306 @ sh @ one)))) & ! [X310 : subst,X311 : term,X312 : subst] : (((sub @ (X306 @ X310 @ X311) @ X312)) = ((X306 @ (comp @ X310 @ X312) @ (sub @ X311 @ X312))))) & ! [X301 : term,X302 : term] : ((((lam @ X302)) != ((lam @ X301))) | (X301 = X302)) & ! [X300 : subst,X299 : term] : (((comp @ sh @ (push @ X299 @ X300))) = X300) & ! [X298 : term,X297 : subst] : (((sub @ one @ (push @ X298 @ X297))) = X298))) & (! [X304 : subst,X306 : (subst > term > term),X303 : (subst > term > term),X305 : term] : (? [X308 : subst,X309 : subst,X307 : term] : (((sub @ (X303 @ X308 @ X307) @ X309)) != ((X303 @ (comp @ X308 @ X309) @ (sub @ X307 @ X309)))) | (((X306 @ X304 @ X305)) = ((X303 @ X304 @ X305))) | (((lam @ (X303 @ sh @ one))) != ((lam @ (X306 @ sh @ one)))) | ? [X310 : subst,X311 : term,X312 : subst] : (((sub @ (X306 @ X310 @ X311) @ X312)) != ((X306 @ (comp @ X310 @ X312) @ (sub @ X311 @ X312))))) | ? [X301 : term,X302 : term] : ((((lam @ X302)) = ((lam @ X301))) & (X301 != X302)) | ? [X300 : subst,X299 : term] : (((comp @ sh @ (push @ X299 @ X300))) != X300) | ? [X298 : term,X297 : subst] : (((sub @ one @ (push @ X298 @ X297))) != X298) | (hoaslaminj_lthm != $true)) & (((d2term @ d_one)) = ((sub @ (d2term @ d_one) @ (d2subst @ d_id)))) & (hoaslamnotap_gthm = $true) & (pushprop_lem2v2_lthm = $true) & (! [X529 : subst,X530 : (subst > term > term),X532 : term,X531 : (subst > term > term)] : (? [X535 : subst,X534 : term,X533 : subst] : (((X531 @ (comp @ X535 @ X533) @ (sub @ X534 @ X533))) != ((sub @ (X531 @ X535 @ X534) @ X533))) | ? [X536 : term,X538 : subst,X537 : subst] : (((X530 @ (comp @ X537 @ X538) @ (sub @ X536 @ X538))) != ((sub @ (X530 @ X537 @ X536) @ X538))) | (((X530 @ X529 @ X532)) = ((X531 @ X529 @ X532))) | (((lam @ (X530 @ sh @ one))) != ((lam @ (X531 @ sh @ one))))) | (hoaslaminj != $true)) & ((hoaslaminj = $true) | ? [X529 : subst,X530 : (subst > term > term),X532 : term,X531 : (subst > term > term)] : (! [X535 : subst,X534 : term,X533 : subst] : (((X531 @ (comp @ X535 @ X533) @ (sub @ X534 @ X533))) = ((sub @ (X531 @ X535 @ X534) @ X533))) & ! [X536 : term,X538 : subst,X537 : subst] : (((X530 @ (comp @ X537 @ X538) @ (sub @ X536 @ X538))) = ((sub @ (X530 @ X537 @ X536) @ X538))) & (((X530 @ X529 @ X532)) != ((X531 @ X529 @ X532))) & (((lam @ (X530 @ sh @ one))) = ((lam @ (X531 @ sh @ one)))))) & ! [X441 : term] : ? [X442 : d_term] : (((d2term @ X442)) = X441) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & ((hoasinduction_no_psi_cond = $true) | ? [X322 : (subst > term > subst > $o),X321 : term] : (($true != ((X322 @ id @ X321 @ id))) & ! [X324 : term,X323 : term] : ((((X322 @ id @ X324 @ id)) != $true) | ($true != ((X322 @ id @ X323 @ id))) | ($true = ((X322 @ id @ (ap @ (sub @ X323 @ id) @ X324) @ id)))) & ! [X325 : (subst > term > term)] : (? [X326 : term] : ((((X322 @ id @ X326 @ id)) = $true) & (((X322 @ id @ (X325 @ id @ X326) @ id)) != $true)) | ? [X329 : subst,X327 : subst,X328 : term] : (((sub @ (X325 @ X329 @ X328) @ X327)) != ((X325 @ (comp @ X329 @ X327) @ (sub @ X328 @ X327)))) | (((X322 @ id @ (lam @ (X325 @ sh @ one)) @ id)) = $true)))) & (! [X322 : (subst > term > subst > $o),X321 : term] : (($true = ((X322 @ id @ X321 @ id))) | ? [X324 : term,X323 : term] : ((((X322 @ id @ X324 @ id)) = $true) & ($true = ((X322 @ id @ X323 @ id))) & ($true != ((X322 @ id @ (ap @ (sub @ X323 @ id) @ X324) @ id)))) | ? [X325 : (subst > term > term)] : (! [X326 : term] : ((((X322 @ id @ X326 @ id)) != $true) | (((X322 @ id @ (X325 @ id @ X326) @ id)) = $true)) & ! [X329 : subst,X327 : subst,X328 : term] : (((sub @ (X325 @ X329 @ X328) @ X327)) = ((X325 @ (comp @ X329 @ X327) @ (sub @ X328 @ X327)))) & (((X322 @ id @ (lam @ (X325 @ sh @ one)) @ id)) != $true))) | (hoasinduction_no_psi_cond != $true)) & (hoasapinj1_gthm = $true) & (hoaslamnotvar = $true) & ((axscons = $true) | ? [X375 : subst] : (((push @ (sub @ one @ X375) @ (comp @ sh @ X375))) != X375)) & (! [X375 : subst] : (((push @ (sub @ one @ X375) @ (comp @ sh @ X375))) = X375) | (axscons != $true)) & (hoasinduction_lem1_lthm = $true) & (hoaslamnotap_lthm = $true) & (! [X539 : term] : (((sub @ X539 @ id)) = X539) | (termmset != $true)) & ((termmset = $true) | ? [X539 : term] : (((sub @ X539 @ id)) != X539)) & (((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id))) != $true) & (induction2lem_gthm = $true) & ((termmset_lthm = $true) | (! [X194 : term] : (((sub @ X194 @ id)) = X194) & ? [X195 : term] : (((sub @ X195 @ id)) != X195))) & (? [X194 : term] : (((sub @ X194 @ id)) != X194) | ! [X195 : term] : (((sub @ X195 @ id)) = X195) | (termmset_lthm != $true)) & ((hoasinduction_lem2 = $true) | ? [X250 : (subst > term > subst > $o),X252 : term,X251 : term] : (! [X254 : term,X253 : term] : ((((X250 @ id @ (ap @ (sub @ X254 @ id) @ X253) @ id)) = $true) | ($true != ((X250 @ id @ X253 @ id))) | (((X250 @ id @ X254 @ id)) != $true)) & ($true = ((X250 @ id @ X252 @ id))) & ! [X257 : subst,X258 : subst,X255 : term,X256 : subst] : (($true = ((X250 @ (comp @ X258 @ X257) @ (sub @ X255 @ X257) @ X256))) | ($true != ((X250 @ X258 @ X255 @ (comp @ X257 @ X256))))) & ! [X262 : subst,X260 : subst,X259 : term,X261 : subst] : (($true = ((X250 @ X261 @ X259 @ (comp @ X262 @ X260)))) | ($true != ((X250 @ (comp @ X261 @ X262) @ (sub @ X259 @ X262) @ X260)))) & ($true != ((X250 @ id @ (ap @ X251 @ X252) @ id))) & (((X250 @ id @ X251 @ id)) = $true))) & (! [X250 : (subst > term > subst > $o),X252 : term,X251 : term] : (? [X254 : term,X253 : term] : ((((X250 @ id @ (ap @ (sub @ X254 @ id) @ X253) @ id)) != $true) & ($true = ((X250 @ id @ X253 @ id))) & (((X250 @ id @ X254 @ id)) = $true)) | ($true != ((X250 @ id @ X252 @ id))) | ? [X257 : subst,X258 : subst,X255 : term,X256 : subst] : (($true != ((X250 @ (comp @ X258 @ X257) @ (sub @ X255 @ X257) @ X256))) & ($true = ((X250 @ X258 @ X255 @ (comp @ X257 @ X256))))) | ? [X262 : subst,X260 : subst,X259 : term,X261 : subst] : (($true != ((X250 @ X261 @ X259 @ (comp @ X262 @ X260)))) & ($true = ((X250 @ (comp @ X261 @ X262) @ (sub @ X259 @ X262) @ X260)))) | ($true = ((X250 @ id @ (ap @ X251 @ X252) @ id))) | (((X250 @ id @ X251 @ id)) != $true)) | (hoasinduction_lem2 != $true)) & ((hoasinduction_lthm = $true) | (! [X196 : term,X197 : (term > $o)] : (($true = ((X197 @ X196))) | ? [X200 : term,X199 : term] : (($true != ((X197 @ (ap @ X200 @ X199)))) & ($true = ((X197 @ X199))) & (((X197 @ X200)) = $true)) | ? [X198 : term] : (($true != ((X197 @ X198))) & (((var @ X198)) = $true)) | ? [X201 : term] : (! [X202 : term] : (($true = ((X197 @ (sub @ X201 @ (push @ X202 @ id))))) | ($true != ((X197 @ X202)))) & (((X197 @ (lam @ X201))) != $true))) & ! [X203 : term,X204 : term,X205 : (subst > term > subst > $o)] : (? [X214 : subst,X215 : term,X213 : subst,X212 : subst] : (($true = ((X205 @ (comp @ X213 @ X214) @ (sub @ X215 @ X214) @ X212))) & ($true != ((X205 @ X213 @ X215 @ (comp @ X214 @ X212))))) | ? [X211 : term,X210 : term] : ((((X205 @ id @ X211 @ id)) = $true) & ($true = ((X205 @ id @ X210 @ id))) & ($true != ((X205 @ id @ (ap @ (sub @ X210 @ id) @ X211) @ id)))) | ? [X209 : subst,X207 : subst,X208 : term,X206 : subst] : ((((X205 @ (comp @ X207 @ X209) @ (sub @ X208 @ X209) @ X206)) != $true) & (((X205 @ X207 @ X208 @ (comp @ X209 @ X206))) = $true)) | (((X205 @ id @ X204 @ id)) != $true) | ($true = ((X205 @ id @ (ap @ X204 @ X203) @ id))) | (((X205 @ id @ X203 @ id)) != $true)) & (sP8 != $true) & ($true != sP7))) & (? [X196 : term,X197 : (term > $o)] : (($true != ((X197 @ X196))) & ! [X200 : term,X199 : term] : (($true = ((X197 @ (ap @ X200 @ X199)))) | ($true != ((X197 @ X199))) | (((X197 @ X200)) != $true)) & ! [X198 : term] : (($true = ((X197 @ X198))) | (((var @ X198)) != $true)) & ! [X201 : term] : (? [X202 : term] : (($true != ((X197 @ (sub @ X201 @ (push @ X202 @ id))))) & ($true = ((X197 @ X202)))) | (((X197 @ (lam @ X201))) = $true))) | ? [X203 : term,X204 : term,X205 : (subst > term > subst > $o)] : (! [X214 : subst,X215 : term,X213 : subst,X212 : subst] : (($true != ((X205 @ (comp @ X213 @ X214) @ (sub @ X215 @ X214) @ X212))) | ($true = ((X205 @ X213 @ X215 @ (comp @ X214 @ X212))))) & ! [X211 : term,X210 : term] : ((((X205 @ id @ X211 @ id)) != $true) | ($true != ((X205 @ id @ X210 @ id))) | ($true = ((X205 @ id @ (ap @ (sub @ X210 @ id) @ X211) @ id)))) & ! [X209 : subst,X207 : subst,X208 : term,X206 : subst] : ((((X205 @ (comp @ X207 @ X209) @ (sub @ X208 @ X209) @ X206)) = $true) | (((X205 @ X207 @ X208 @ (comp @ X209 @ X206))) != $true)) & (((X205 @ id @ X204 @ id)) = $true) & ($true != ((X205 @ id @ (ap @ X204 @ X203) @ id))) & (((X205 @ id @ X203 @ id)) = $true)) | (sP8 = $true) | ($true = sP7) | (hoasinduction_lthm != $true)) & (pushprop_lem1v2_gthm = $true) & (((d2subst @ d_id)) = ((comp @ (d2subst @ d_id) @ (d2subst @ d_id)))) & (hoasinduction_lem1_gthm = $true) & (! [X342 : term,X340 : term,X343 : term,X341 : term] : ((X341 = X342) | (((ap @ X342 @ X340)) != ((ap @ X341 @ X343)))) | (apinj1 != $true)) & ((apinj1 = $true) | ? [X342 : term,X340 : term,X343 : term,X341 : term] : ((X341 != X342) & (((ap @ X342 @ X340)) = ((ap @ X341 @ X343))))) & (hoasapnotvar_gthm = $true) & (axmap = $true) & (($true = sP5) | (induction2_lthm != $true)) & ((induction2_lthm = $true) | ($true != sP5)) & (substmonoid_gthm = $true) & (axvarshift = $true) & (pushprop_lem0_gthm = $true) & (! [X135 : term,X137 : (term > $o),X134 : term,X136 : (subst > term > subst > $o)] : ((((X137 @ (ap @ X135 @ X134))) = $true) | (((X137 @ X135)) != $true) | ? [X147 : term,X148 : term] : (($true = ((X136 @ id @ X148 @ id))) & ($true = ((X136 @ id @ X147 @ id))) & ($true != ((X136 @ id @ (ap @ (sub @ X148 @ id) @ X147) @ id)))) | ? [X143 : term,X144 : subst,X145 : subst,X142 : subst] : (($true = ((X136 @ (comp @ X142 @ X145) @ (sub @ X143 @ X145) @ X144))) & ($true != ((X136 @ X142 @ X143 @ (comp @ X145 @ X144))))) | ($true != ((X137 @ X134))) | ? [X141 : subst,X138 : term,X140 : subst,X139 : subst] : (($true != ((X136 @ (comp @ X140 @ X141) @ (sub @ X138 @ X141) @ X139))) & (((X136 @ X140 @ X138 @ (comp @ X141 @ X139))) = $true)) | ? [X146 : term] : (((X136 @ id @ X146 @ id)) != ((X137 @ X146)))) | (hoasinduction_lem2v2 != $true)) & ((hoasinduction_lem2v2 = $true) | ? [X135 : term,X137 : (term > $o),X134 : term,X136 : (subst > term > subst > $o)] : ((((X137 @ (ap @ X135 @ X134))) != $true) & (((X137 @ X135)) = $true) & ! [X147 : term,X148 : term] : (($true != ((X136 @ id @ X148 @ id))) | ($true != ((X136 @ id @ X147 @ id))) | ($true = ((X136 @ id @ (ap @ (sub @ X148 @ id) @ X147) @ id)))) & ! [X143 : term,X144 : subst,X145 : subst,X142 : subst] : (($true != ((X136 @ (comp @ X142 @ X145) @ (sub @ X143 @ X145) @ X144))) | ($true = ((X136 @ X142 @ X143 @ (comp @ X145 @ X144))))) & ($true = ((X137 @ X134))) & ! [X141 : subst,X138 : term,X140 : subst,X139 : subst] : (($true = ((X136 @ (comp @ X140 @ X141) @ (sub @ X138 @ X141) @ X139))) | (((X136 @ X140 @ X138 @ (comp @ X141 @ X139))) != $true)) & ! [X146 : term] : (((X136 @ id @ X146 @ id)) = ((X137 @ X146))))) & (((var @ (d2term @ d_one))) != $true) & (! [X440 : term] : (((sub @ X440 @ id)) = X440) | (axvarid != $true)) & ((axvarid = $true) | ? [X440 : term] : (((sub @ X440 @ id)) != X440)) & (? [X423 : term] : (((sub @ X423 @ id)) != X423) | ! [X432 : term,X433 : (subst > term > subst > $o)] : (? [X439 : term] : (($true = ((X433 @ id @ X439 @ id))) & (((X433 @ id @ (sub @ X432 @ (push @ X439 @ id)) @ id)) != $true)) | ? [X434 : (subst > term > term)] : (($true != ((X433 @ id @ (lam @ (X434 @ sh @ one)) @ id))) & ! [X437 : subst,X436 : subst,X435 : term] : (((X434 @ (comp @ X436 @ X437) @ (sub @ X435 @ X437))) = ((sub @ (X434 @ X436 @ X435) @ X437))) & ! [X438 : term] : (($true = ((X433 @ id @ (X434 @ id @ X438) @ id))) | (((X433 @ id @ X438 @ id)) != $true))) | (((X433 @ id @ (lam @ X432) @ id)) = $true)) | ? [X424 : term,X425 : (subst > term > subst > $o)] : (! [X426 : (subst > term > term)] : (? [X430 : term] : (($true != ((X425 @ id @ (X426 @ id @ X430) @ id))) & ($true = ((X425 @ id @ X430 @ id)))) | ($true = ((X425 @ id @ (lam @ (X426 @ sh @ one)) @ id))) | ? [X427 : subst,X428 : term,X429 : subst] : (((X426 @ (comp @ X427 @ X429) @ (sub @ X428 @ X429))) != ((sub @ (X426 @ X427 @ X428) @ X429)))) & ($true != ((X425 @ id @ (lam @ (sub @ X424 @ (push @ one @ sh))) @ id))) & ! [X431 : term] : (($true != ((X425 @ id @ X431 @ id))) | (((X425 @ id @ (sub @ X424 @ (push @ X431 @ id)) @ id)) = $true))) | (hoasinduction_lem3a_lthm != $true)) & ((hoasinduction_lem3a_lthm = $true) | (! [X423 : term] : (((sub @ X423 @ id)) = X423) & ? [X432 : term,X433 : (subst > term > subst > $o)] : (! [X439 : term] : (($true != ((X433 @ id @ X439 @ id))) | (((X433 @ id @ (sub @ X432 @ (push @ X439 @ id)) @ id)) = $true)) & ! [X434 : (subst > term > term)] : (($true = ((X433 @ id @ (lam @ (X434 @ sh @ one)) @ id))) | ? [X437 : subst,X436 : subst,X435 : term] : (((X434 @ (comp @ X436 @ X437) @ (sub @ X435 @ X437))) != ((sub @ (X434 @ X436 @ X435) @ X437))) | ? [X438 : term] : (($true != ((X433 @ id @ (X434 @ id @ X438) @ id))) & (((X433 @ id @ X438 @ id)) = $true))) & (((X433 @ id @ (lam @ X432) @ id)) != $true)) & ! [X424 : term,X425 : (subst > term > subst > $o)] : (? [X426 : (subst > term > term)] : (! [X430 : term] : (($true = ((X425 @ id @ (X426 @ id @ X430) @ id))) | ($true != ((X425 @ id @ X430 @ id)))) & ($true != ((X425 @ id @ (lam @ (X426 @ sh @ one)) @ id))) & ! [X427 : subst,X428 : term,X429 : subst] : (((X426 @ (comp @ X427 @ X429) @ (sub @ X428 @ X429))) = ((sub @ (X426 @ X427 @ X428) @ X429)))) | ($true = ((X425 @ id @ (lam @ (sub @ X424 @ (push @ one @ sh))) @ id))) | ? [X431 : term] : (($true = ((X425 @ id @ X431 @ id))) & (((X425 @ id @ (sub @ X424 @ (push @ X431 @ id)) @ id)) != $true))))) & ((hoasinduction_lem3v2a = $true) | ? [X80 : (subst > term > subst > $o),X78 : (term > $o),X79 : term] : (! [X81 : term] : (((X78 @ X81)) = ((X80 @ id @ X81 @ id))) & ($true != ((X78 @ (lam @ X79)))) & ! [X82 : (subst > term > term)] : (? [X83 : term] : ((((X80 @ id @ (X82 @ id @ X83) @ id)) != $true) & (((X80 @ id @ X83 @ id)) = $true)) | ($true = ((X80 @ id @ (lam @ (X82 @ sh @ one)) @ id))) | ? [X86 : subst,X84 : subst,X85 : term] : (((sub @ (X82 @ X84 @ X85) @ X86)) != ((X82 @ (comp @ X84 @ X86) @ (sub @ X85 @ X86))))) & ! [X87 : term] : (($true != ((X78 @ X87))) | (((X78 @ (sub @ X79 @ (push @ X87 @ id)))) = $true)))) & (! [X80 : (subst > term > subst > $o),X78 : (term > $o),X79 : term] : (? [X81 : term] : (((X78 @ X81)) != ((X80 @ id @ X81 @ id))) | ($true = ((X78 @ (lam @ X79)))) | ? [X82 : (subst > term > term)] : (! [X83 : term] : ((((X80 @ id @ (X82 @ id @ X83) @ id)) = $true) | (((X80 @ id @ X83 @ id)) != $true)) & ($true != ((X80 @ id @ (lam @ (X82 @ sh @ one)) @ id))) & ! [X86 : subst,X84 : subst,X85 : term] : (((sub @ (X82 @ X84 @ X85) @ X86)) = ((X82 @ (comp @ X84 @ X86) @ (sub @ X85 @ X86))))) | ? [X87 : term] : (($true = ((X78 @ X87))) & (((X78 @ (sub @ X79 @ (push @ X87 @ id)))) != $true))) | (hoasinduction_lem3v2a != $true)) & (pushprop_lem2v2 = $true) & ((hoasinduction_no_psi_cond_lthm = $true) | (! [X447 : term,X446 : (term > $o)] : (? [X448 : term,X449 : term] : (($true = ((X446 @ X448))) & ($true != ((X446 @ (ap @ X449 @ X448)))) & ($true = ((X446 @ X449)))) | ? [X452 : term] : (($true != ((X446 @ X452))) & (((var @ X452)) = $true)) | ? [X450 : term] : (($true != ((X446 @ (lam @ X450)))) & ! [X451 : term] : (($true != ((X446 @ X451))) | ($true = ((X446 @ (sub @ X450 @ (push @ X451 @ id))))))) | (((X446 @ X447)) = $true)) & ($true != sP4) & ! [X443 : (subst > term > subst > $o)] : ? [X444 : (term > $o)] : ! [X445 : term] : (((X443 @ id @ X445 @ id)) = ((X444 @ X445))) & ! [X456 : term,X455 : (subst > term > subst > $o),X454 : (term > $o)] : (? [X459 : (subst > term > term)] : (($true != ((X455 @ id @ (lam @ (X459 @ sh @ one)) @ id))) & ! [X460 : term] : (($true != ((X455 @ id @ X460 @ id))) | ($true = ((X455 @ id @ (X459 @ id @ X460) @ id)))) & ! [X461 : subst,X463 : term,X462 : subst] : (((X459 @ (comp @ X462 @ X461) @ (sub @ X463 @ X461))) = ((sub @ (X459 @ X462 @ X463) @ X461)))) | ? [X458 : term] : (($true != ((X454 @ (sub @ X456 @ (push @ X458 @ id))))) & ($true = ((X454 @ X458)))) | ($true = ((X454 @ (lam @ X456)))) | ? [X457 : term] : (((X454 @ X457)) != ((X455 @ id @ X457 @ id)))) & ! [X453 : term] : (((sub @ X453 @ id)) = X453))) & (? [X447 : term,X446 : (term > $o)] : (! [X448 : term,X449 : term] : (($true != ((X446 @ X448))) | ($true = ((X446 @ (ap @ X449 @ X448)))) | ($true != ((X446 @ X449)))) & ! [X452 : term] : (($true = ((X446 @ X452))) | (((var @ X452)) != $true)) & ! [X450 : term] : (($true = ((X446 @ (lam @ X450)))) | ? [X451 : term] : (($true = ((X446 @ X451))) & ($true != ((X446 @ (sub @ X450 @ (push @ X451 @ id))))))) & (((X446 @ X447)) != $true)) | ($true = sP4) | ? [X443 : (subst > term > subst > $o)] : ! [X444 : (term > $o)] : ? [X445 : term] : (((X443 @ id @ X445 @ id)) != ((X444 @ X445))) | ? [X456 : term,X455 : (subst > term > subst > $o),X454 : (term > $o)] : (! [X459 : (subst > term > term)] : (($true = ((X455 @ id @ (lam @ (X459 @ sh @ one)) @ id))) | ? [X460 : term] : (($true = ((X455 @ id @ X460 @ id))) & ($true != ((X455 @ id @ (X459 @ id @ X460) @ id)))) | ? [X461 : subst,X463 : term,X462 : subst] : (((X459 @ (comp @ X462 @ X461) @ (sub @ X463 @ X461))) != ((sub @ (X459 @ X462 @ X463) @ X461)))) & ! [X458 : term] : (($true = ((X454 @ (sub @ X456 @ (push @ X458 @ id))))) | ($true != ((X454 @ X458)))) & ($true != ((X454 @ (lam @ X456)))) & ! [X457 : term] : (((X454 @ X457)) = ((X455 @ id @ X457 @ id)))) | ? [X453 : term] : (((sub @ X453 @ id)) != X453) | (hoasinduction_no_psi_cond_lthm != $true)) & (hoaslaminj_gthm = $true) & (pushprop_lthm_orig = $true) & (induction2_gthm = $true) & ((hoasinduction_lem3 = $true) | ? [X60 : (subst > term > subst > $o),X61 : term] : (! [X62 : (subst > term > term)] : ((((X60 @ id @ (lam @ (X62 @ sh @ one)) @ id)) = $true) | ? [X65 : subst,X64 : subst,X63 : term] : (((sub @ (X62 @ X64 @ X63) @ X65)) != ((X62 @ (comp @ X64 @ X65) @ (sub @ X63 @ X65)))) | ? [X66 : term] : (($true != ((X60 @ id @ (X62 @ id @ X66) @ id))) & ($true = ((X60 @ id @ X66 @ id))))) & ! [X73 : subst,X71 : subst,X74 : subst,X72 : term] : ((((X60 @ X73 @ X72 @ (comp @ X74 @ X71))) != $true) | ($true = ((X60 @ (comp @ X73 @ X74) @ (sub @ X72 @ X74) @ X71)))) & ! [X68 : subst,X69 : subst,X70 : subst,X67 : term] : (($true = ((X60 @ X68 @ X67 @ (comp @ X69 @ X70)))) | (((X60 @ (comp @ X68 @ X69) @ (sub @ X67 @ X69) @ X70)) != $true)) & ! [X75 : term] : ((((X60 @ id @ X75 @ id)) != $true) | (((X60 @ id @ (sub @ X61 @ (push @ X75 @ id)) @ id)) = $true)) & ($true != ((X60 @ id @ (lam @ X61) @ id))))) & (! [X60 : (subst > term > subst > $o),X61 : term] : (? [X62 : (subst > term > term)] : ((((X60 @ id @ (lam @ (X62 @ sh @ one)) @ id)) != $true) & ! [X65 : subst,X64 : subst,X63 : term] : (((sub @ (X62 @ X64 @ X63) @ X65)) = ((X62 @ (comp @ X64 @ X65) @ (sub @ X63 @ X65)))) & ! [X66 : term] : (($true = ((X60 @ id @ (X62 @ id @ X66) @ id))) | ($true != ((X60 @ id @ X66 @ id))))) | ? [X73 : subst,X71 : subst,X74 : subst,X72 : term] : ((((X60 @ X73 @ X72 @ (comp @ X74 @ X71))) = $true) & ($true != ((X60 @ (comp @ X73 @ X74) @ (sub @ X72 @ X74) @ X71)))) | ? [X68 : subst,X69 : subst,X70 : subst,X67 : term] : (($true != ((X60 @ X68 @ X67 @ (comp @ X69 @ X70)))) & (((X60 @ (comp @ X68 @ X69) @ (sub @ X67 @ X69) @ X70)) = $true)) | ? [X75 : term] : ((((X60 @ id @ X75 @ id)) = $true) & (((X60 @ id @ (sub @ X61 @ (push @ X75 @ id)) @ id)) != $true)) | ($true = ((X60 @ id @ (lam @ X61) @ id)))) | (hoasinduction_lem3 != $true)) & ((hoasinduction_lem0_lthm = $true) | ? [X504 : (subst > term > subst > $o)] : ! [X505 : (term > $o)] : ? [X506 : term] : (((X505 @ X506)) != ((X504 @ id @ X506 @ id)))) & (! [X504 : (subst > term > subst > $o)] : ? [X505 : (term > $o)] : ! [X506 : term] : (((X505 @ X506)) = ((X504 @ id @ X506 @ id))) | (hoasinduction_lem0_lthm != $true)) & (hoasinduction_lem1 = $true) & (? [X110 : term,X109 : subst] : (((comp @ sh @ (push @ X110 @ X109))) != X109) | ! [X111 : term,X112 : (term > $o),X113 : (term > $o),X115 : subst,X114 : term] : (($true != ((X112 @ X111))) | (((X113 @ (sub @ X111 @ (push @ X114 @ X115)))) = $true)) | ? [X107 : term,X108 : subst] : (((sub @ one @ (push @ X107 @ X108))) != X107) | (pushprop_lem1_lthm != $true)) & ((pushprop_lem1_lthm = $true) | (! [X110 : term,X109 : subst] : (((comp @ sh @ (push @ X110 @ X109))) = X109) & ? [X111 : term,X112 : (term > $o),X113 : (term > $o),X115 : subst,X114 : term] : (($true = ((X112 @ X111))) & (((X113 @ (sub @ X111 @ (push @ X114 @ X115)))) != $true)) & ! [X107 : term,X108 : subst] : (((sub @ one @ (push @ X107 @ X108))) = X107))) & (((d2subst @ d_id)) = ((push @ (d2term @ d_one) @ (d2subst @ d_id)))) & (ulamvarsh = $true) & ((shinj = $true) | ? [X296 : term,X295 : term] : ((((sub @ X295 @ sh)) = ((sub @ X296 @ sh))) & (X295 != X296))) & (! [X296 : term,X295 : term] : ((((sub @ X295 @ sh)) != ((sub @ X296 @ sh))) | (X295 = X296)) | (shinj != $true)) & (pushprop_lem1_gthm = $true) & ((induction = $true) | ? [X524 : (term > $o),X523 : term] : (! [X525 : term] : (($true = ((X524 @ (lam @ X525)))) | ($true != ((X524 @ X525)))) & ! [X528 : term] : ((((X524 @ X528)) = $true) | (((var @ X528)) != $true)) & ! [X527 : term,X526 : term] : ((((X524 @ X526)) != $true) | ($true != ((X524 @ X527))) | ($true = ((X524 @ (ap @ X526 @ X527))))) & (((X524 @ X523)) != $true))) & (! [X524 : (term > $o),X523 : term] : (? [X525 : term] : (($true != ((X524 @ (lam @ X525)))) & ($true = ((X524 @ X525)))) | ? [X528 : term] : ((((X524 @ X528)) != $true) & (((var @ X528)) = $true)) | ? [X527 : term,X526 : term] : ((((X524 @ X526)) = $true) & ($true = ((X524 @ X527))) & ($true != ((X524 @ (ap @ X526 @ X527))))) | (((X524 @ X523)) = $true)) | (induction != $true)) & ((axidr = $true) | ? [X8 : subst] : (((comp @ X8 @ id)) != X8)) & (! [X8 : subst] : (((comp @ X8 @ id)) = X8) | (axidr != $true)) & ! [X498 : subst] : ? [X499 : d_subst] : (((d2subst @ X499)) = X498) & (pushprop = $true) & (! [X18 : (subst > term > subst > $o),X17 : term] : (? [X26 : (subst > term > term)] : (! [X28 : subst,X29 : term,X27 : subst] : (((X26 @ (comp @ X27 @ X28) @ (sub @ X29 @ X28))) = ((sub @ (X26 @ X27 @ X29) @ X28))) & ! [X30 : term] : ((((X18 @ id @ (X26 @ id @ X30) @ id)) = $true) | ($true != ((X18 @ id @ X30 @ id)))) & ($true != ((X18 @ id @ (lam @ (X26 @ sh @ one)) @ id)))) | ? [X21 : term] : ((((X18 @ id @ X21 @ id)) != $true) & ($true = ((var @ (sub @ X21 @ id))))) | ($true = ((X18 @ id @ X17 @ id))) | ($true = ((sP3 @ X18))) | ? [X22 : subst,X23 : subst,X25 : term,X24 : subst] : (($true = ((X18 @ X22 @ X25 @ (comp @ X24 @ X23)))) & (((X18 @ (comp @ X22 @ X24) @ (sub @ X25 @ X24) @ X23)) != $true)) | ? [X31 : subst,X34 : subst,X33 : subst,X32 : term] : (($true != ((X18 @ X31 @ X32 @ (comp @ X33 @ X34)))) & ($true = ((X18 @ (comp @ X31 @ X33) @ (sub @ X32 @ X33) @ X34))))) | (hoasinduction != $true)) & ((hoasinduction = $true) | ? [X18 : (subst > term > subst > $o),X17 : term] : (! [X26 : (subst > term > term)] : (? [X28 : subst,X29 : term,X27 : subst] : (((X26 @ (comp @ X27 @ X28) @ (sub @ X29 @ X28))) != ((sub @ (X26 @ X27 @ X29) @ X28))) | ? [X30 : term] : ((((X18 @ id @ (X26 @ id @ X30) @ id)) != $true) & ($true = ((X18 @ id @ X30 @ id)))) | ($true = ((X18 @ id @ (lam @ (X26 @ sh @ one)) @ id)))) & ! [X21 : term] : ((((X18 @ id @ X21 @ id)) = $true) | ($true != ((var @ (sub @ X21 @ id))))) & ($true != ((X18 @ id @ X17 @ id))) & ($true != ((sP3 @ X18))) & ! [X22 : subst,X23 : subst,X25 : term,X24 : subst] : (($true != ((X18 @ X22 @ X25 @ (comp @ X24 @ X23)))) | (((X18 @ (comp @ X22 @ X24) @ (sub @ X25 @ X24) @ X23)) = $true)) & ! [X31 : subst,X34 : subst,X33 : subst,X32 : term] : (($true = ((X18 @ X31 @ X32 @ (comp @ X33 @ X34)))) | ($true != ((X18 @ (comp @ X31 @ X33) @ (sub @ X32 @ X33) @ X34)))))) & ! [X398 : d_term,X397 : d_term] : ((X397 = X398) | (((d2term @ X398)) != ((d2term @ X397)))) & (hoasinduction_gthm = $true) & ((hoasinduction_lem3a = $true) | ? [X287 : (subst > term > subst > $o),X288 : term] : ((((X287 @ id @ (lam @ X288) @ id)) != $true) & ! [X289 : (subst > term > term)] : ((((X287 @ id @ (lam @ (X289 @ sh @ one)) @ id)) = $true) | ? [X290 : term] : ((((X287 @ id @ (X289 @ id @ X290) @ id)) != $true) & (((X287 @ id @ X290 @ id)) = $true)) | ? [X293 : term,X291 : subst,X292 : subst] : (((sub @ (X289 @ X292 @ X293) @ X291)) != ((X289 @ (comp @ X292 @ X291) @ (sub @ X293 @ X291))))) & ! [X294 : term] : (($true = ((X287 @ id @ (sub @ X288 @ (push @ X294 @ id)) @ id))) | (((X287 @ id @ X294 @ id)) != $true)))) & (! [X287 : (subst > term > subst > $o),X288 : term] : ((((X287 @ id @ (lam @ X288) @ id)) = $true) | ? [X289 : (subst > term > term)] : ((((X287 @ id @ (lam @ (X289 @ sh @ one)) @ id)) != $true) & ! [X290 : term] : ((((X287 @ id @ (X289 @ id @ X290) @ id)) = $true) | (((X287 @ id @ X290 @ id)) != $true)) & ! [X293 : term,X291 : subst,X292 : subst] : (((sub @ (X289 @ X292 @ X293) @ X291)) = ((X289 @ (comp @ X292 @ X291) @ (sub @ X293 @ X291))))) | ? [X294 : term] : (($true != ((X287 @ id @ (sub @ X288 @ (push @ X294 @ id)) @ id))) & (((X287 @ id @ X294 @ id)) = $true))) | (hoasinduction_lem3a != $true)) & (axclos = $true) & (hoasinduction_lem2_gthm = $true) & (! [X11 : term,X10 : (term > $o)] : (? [X12 : term] : (($true != ((X10 @ X12))) & (((var @ X12)) = $true)) | ? [X13 : term,X14 : term] : ((((X10 @ X14)) = $true) & ($true != ((X10 @ (ap @ X14 @ X13)))) & (((X10 @ X13)) = $true)) | ($true = ((X10 @ X11))) | ? [X15 : term] : (! [X16 : term] : ((((X10 @ X16)) != $true) | ($true = ((X10 @ (sub @ X15 @ (push @ X16 @ id)))))) & (((X10 @ (lam @ X15))) != $true))) | (induction2 != $true)) & ((induction2 = $true) | ? [X11 : term,X10 : (term > $o)] : (! [X12 : term] : (($true = ((X10 @ X12))) | (((var @ X12)) != $true)) & ! [X13 : term,X14 : term] : ((((X10 @ X14)) != $true) | ($true = ((X10 @ (ap @ X14 @ X13)))) | (((X10 @ X13)) != $true)) & ($true != ((X10 @ X11))) & ! [X15 : term] : (? [X16 : term] : ((((X10 @ X16)) = $true) & ($true != ((X10 @ (sub @ X15 @ (push @ X16 @ id)))))) | (((X10 @ (lam @ X15))) = $true)))) & ((induction2lem_lthm = $true) | ($true != sP2)) & (($true = sP2) | (induction2lem_lthm != $true)) & (! [X191 : term,X189 : subst,X190 : (term > $o)] : ? [X192 : (term > $o)] : ! [X193 : term] : (((X190 @ (sub @ X193 @ (push @ X191 @ X189)))) = ((X192 @ X193))) | (pushprop_lem0_lthm != $true)) & ((pushprop_lem0_lthm = $true) | ? [X191 : term,X189 : subst,X190 : (term > $o)] : ! [X192 : (term > $o)] : ? [X193 : term] : (((X190 @ (sub @ X193 @ (push @ X191 @ X189)))) != ((X192 @ X193)))) & (hoasinduction_lem3b_gthm = $true) & (hoaslamnotvar_gthm = $true) & (! [X516 : term] : ? [X517 : (subst > term > term)] : ! [X519 : subst,X518 : term] : (((sub @ X516 @ (push @ X518 @ X519))) = ((X517 @ X519 @ X518))) | (hoasinduction_lem3v2_f != $true)) & ((hoasinduction_lem3v2_f = $true) | ? [X516 : term] : ! [X517 : (subst > term > term)] : ? [X519 : subst,X518 : term] : (((sub @ X516 @ (push @ X518 @ X519))) != ((X517 @ X519 @ X518)))) & ((hoasinduction_lthm_3 = $true) | (! [X153 : (term > $o),X154 : term] : (? [X159 : term] : (($true != ((X153 @ X159))) & ($true = ((var @ X159)))) | ($true = ((X153 @ X154))) | ? [X157 : term] : ((((X153 @ (lam @ X157))) != $true) & ! [X158 : term] : (($true != ((X153 @ X158))) | (((X153 @ (sub @ X157 @ (push @ X158 @ id)))) = $true))) | ? [X155 : term,X156 : term] : ((((X153 @ X155)) = $true) & ($true != ((X153 @ (ap @ X156 @ X155)))) & ($true = ((X153 @ X156))))) & ! [X150 : (subst > term > subst > $o)] : ? [X151 : (term > $o)] : ! [X152 : term] : (((X150 @ id @ X152 @ id)) = ((X151 @ X152))) & (sP1 != $true) & ! [X160 : term] : (((sub @ X160 @ id)) = X160) & ! [X162 : term,X163 : (subst > term > subst > $o),X161 : (term > $o)] : (? [X170 : term] : (((X161 @ X170)) != ((X163 @ id @ X170 @ id))) | ? [X164 : (subst > term > term)] : (($true != ((X163 @ id @ (lam @ (X164 @ sh @ one)) @ id))) & ! [X167 : subst,X166 : subst,X165 : term] : (((sub @ (X164 @ X166 @ X165) @ X167)) = ((X164 @ (comp @ X166 @ X167) @ (sub @ X165 @ X167)))) & ! [X168 : term] : ((((X163 @ id @ X168 @ id)) != $true) | (((X163 @ id @ (X164 @ id @ X168) @ id)) = $true))) | (((X161 @ (lam @ X162))) = $true) | ? [X169 : term] : (($true = ((X161 @ X169))) & (((X161 @ (sub @ X162 @ (push @ X169 @ id)))) != $true))))) & (? [X153 : (term > $o),X154 : term] : (! [X159 : term] : (($true = ((X153 @ X159))) | ($true != ((var @ X159)))) & ($true != ((X153 @ X154))) & ! [X157 : term] : ((((X153 @ (lam @ X157))) = $true) | ? [X158 : term] : (($true = ((X153 @ X158))) & (((X153 @ (sub @ X157 @ (push @ X158 @ id)))) != $true))) & ! [X155 : term,X156 : term] : ((((X153 @ X155)) != $true) | ($true = ((X153 @ (ap @ X156 @ X155)))) | ($true != ((X153 @ X156))))) | ? [X150 : (subst > term > subst > $o)] : ! [X151 : (term > $o)] : ? [X152 : term] : (((X150 @ id @ X152 @ id)) != ((X151 @ X152))) | (sP1 = $true) | ? [X160 : term] : (((sub @ X160 @ id)) != X160) | ? [X162 : term,X163 : (subst > term > subst > $o),X161 : (term > $o)] : (! [X170 : term] : (((X161 @ X170)) = ((X163 @ id @ X170 @ id))) & ! [X164 : (subst > term > term)] : (($true = ((X163 @ id @ (lam @ (X164 @ sh @ one)) @ id))) | ? [X167 : subst,X166 : subst,X165 : term] : (((sub @ (X164 @ X166 @ X165) @ X167)) != ((X164 @ (comp @ X166 @ X167) @ (sub @ X165 @ X167)))) | ? [X168 : term] : ((((X163 @ id @ X168 @ id)) = $true) & (((X163 @ id @ (X164 @ id @ X168) @ id)) != $true))) & (((X161 @ (lam @ X162))) != $true) & ! [X169 : term] : (($true != ((X161 @ X169))) | (((X161 @ (sub @ X162 @ (push @ X169 @ id)))) = $true))) | (hoasinduction_lthm_3 != $true)) & (((d2term @ d_one)) = ((hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one)))) & ((pushprop_lem1v2_lthm = $true) | (? [X402 : subst,X401 : (term > $o),X404 : term,X403 : (term > $o)] : ((((X401 @ X404)) = $true) & ! [X405 : term] : (((X403 @ X405)) = ((X401 @ (sub @ X405 @ (push @ X404 @ X402))))) & ($true != ((X403 @ one)))) & ! [X400 : subst,X399 : term] : (((sub @ one @ (push @ X399 @ X400))) = X399))) & (! [X402 : subst,X401 : (term > $o),X404 : term,X403 : (term > $o)] : ((((X401 @ X404)) != $true) | ? [X405 : term] : (((X403 @ X405)) != ((X401 @ (sub @ X405 @ (push @ X404 @ X402))))) | ($true = ((X403 @ one)))) | ? [X400 : subst,X399 : term] : (((sub @ one @ (push @ X399 @ X400))) != X399) | (pushprop_lem1v2_lthm != $true)) & ! [X35 : d_subst] : (d_id = X35) & (! [X515 : term,X512 : term,X514 : term,X513 : term] : ((((ap @ (sub @ X513 @ id) @ X514)) != ((ap @ (sub @ X515 @ id) @ X512))) | (X513 = X515)) | ? [X510 : term,X511 : term,X508 : term,X509 : term] : ((((ap @ X511 @ X509)) = ((ap @ X508 @ X510))) & (X508 != X511)) | ? [X507 : term] : (((sub @ X507 @ id)) != X507) | (hoasapinj1_lthm != $true)) & ((hoasapinj1_lthm = $true) | (? [X515 : term,X512 : term,X514 : term,X513 : term] : ((((ap @ (sub @ X513 @ id) @ X514)) = ((ap @ (sub @ X515 @ id) @ X512))) & (X513 != X515)) & ! [X510 : term,X511 : term,X508 : term,X509 : term] : ((((ap @ X511 @ X509)) != ((ap @ X508 @ X510))) | (X508 = X511)) & ! [X507 : term] : (((sub @ X507 @ id)) = X507))) & (((d2term @ d_one)) = one) & (apnotvar = $true) & (axabs = $true) & ((pushprop_lem1v2 = $true) | ? [X284 : subst,X282 : (term > $o),X285 : term,X283 : (term > $o)] : (($true != ((X282 @ one))) & ! [X286 : term] : (((X282 @ X286)) = ((X283 @ (sub @ X286 @ (push @ X285 @ X284))))) & (((X283 @ X285)) = $true))) & (! [X284 : subst,X282 : (term > $o),X285 : term,X283 : (term > $o)] : (($true = ((X282 @ one))) | ? [X286 : term] : (((X282 @ X286)) != ((X283 @ (sub @ X286 @ (push @ X285 @ X284))))) | (((X283 @ X285)) != $true)) | (pushprop_lem1v2 != $true)) & (! [X494 : term,X493 : term,X492 : term,X495 : term] : ((((ap @ X492 @ X494)) != ((ap @ X493 @ X495))) | (X494 = X495)) | (apinj2 != $true)) & ((apinj2 = $true) | ? [X494 : term,X493 : term,X492 : term,X495 : term] : ((((ap @ X492 @ X494)) = ((ap @ X493 @ X495))) & (X494 != X495))) & (hoasinduction_lem1v2_gthm = $true) & (! [X491 : term,X490 : term] : ((X490 = X491) | (((lam @ X490)) != ((lam @ X491)))) | (laminj != $true)) & ((laminj = $true) | ? [X491 : term,X490 : term] : ((X490 != X491) & (((lam @ X490)) = ((lam @ X491))))) & (pushprop_lem2v2_gthm = $true) & (ulamvarind = $true) & ((hoaslamnotap = $true) | ? [X482 : (subst > term > term),X480 : term,X481 : term] : ((((ap @ (sub @ X481 @ id) @ X480)) = ((lam @ (X482 @ sh @ one)))) & ! [X485 : subst,X484 : subst,X483 : term] : (((sub @ (X482 @ X484 @ X483) @ X485)) = ((X482 @ (comp @ X484 @ X485) @ (sub @ X483 @ X485)))))) & (! [X482 : (subst > term > term),X480 : term,X481 : term] : ((((ap @ (sub @ X481 @ id) @ X480)) != ((lam @ (X482 @ sh @ one)))) | ? [X485 : subst,X484 : subst,X483 : term] : (((sub @ (X482 @ X484 @ X483) @ X485)) != ((X482 @ (comp @ X484 @ X485) @ (sub @ X483 @ X485))))) | (hoaslamnotap != $true)) & (! [X369 : term] : ? [X370 : (subst > term > term)] : ! [X371 : subst,X372 : term] : (((X370 @ X371 @ X372)) = ((sub @ X369 @ (push @ X372 @ X371)))) | (hoasinduction_lem3v2_f_lthm != $true)) & ((hoasinduction_lem3v2_f_lthm = $true) | ? [X369 : term] : ! [X370 : (subst > term > term)] : ? [X371 : subst,X372 : term] : (((X370 @ X371 @ X372)) != ((sub @ X369 @ (push @ X372 @ X371))))) & (hoaslamnotvar_lthm = $true) & ((hoasinduction_lem3b_lthm = $true) | ? [X373 : term] : ! [X374 : (subst > term > term)] : (((sub @ X373 @ (push @ one @ sh))) != ((X374 @ sh @ one)))) & (! [X373 : term] : ? [X374 : (subst > term > term)] : (((sub @ X373 @ (push @ one @ sh))) = ((X374 @ sh @ one))) | (hoasinduction_lem3b_lthm != $true)) & (! [X412 : (subst > term > subst > $o),X411 : term] : ((((X412 @ id @ (lam @ (sub @ X411 @ (push @ one @ sh))) @ id)) = $true) | ? [X413 : term] : ((((X412 @ id @ (sub @ X411 @ (push @ X413 @ id)) @ id)) != $true) & (((X412 @ id @ X413 @ id)) = $true)) | ? [X414 : term,X415 : (subst > term > term)] : ((((X412 @ id @ (lam @ (X415 @ sh @ one)) @ id)) != $true) & ! [X419 : subst,X417 : term,X418 : subst] : (((sub @ (X415 @ X419 @ X417) @ X418)) = ((sub @ (sub @ X414 @ (push @ X417 @ X419)) @ X418))) & ! [X422 : subst,X420 : term,X421 : subst] : (((sub @ X414 @ (push @ (sub @ X420 @ X421) @ (comp @ X422 @ X421)))) = ((X415 @ (comp @ X422 @ X421) @ (sub @ X420 @ X421)))) & ! [X416 : term] : (($true != ((X412 @ id @ X416 @ id))) | ($true = ((X412 @ id @ (X415 @ id @ X416) @ id)))))) | (hoasinduction_lem3aaa != $true)) & ((hoasinduction_lem3aaa = $true) | ? [X412 : (subst > term > subst > $o),X411 : term] : ((((X412 @ id @ (lam @ (sub @ X411 @ (push @ one @ sh))) @ id)) != $true) & ! [X413 : term] : ((((X412 @ id @ (sub @ X411 @ (push @ X413 @ id)) @ id)) = $true) | (((X412 @ id @ X413 @ id)) != $true)) & ! [X414 : term,X415 : (subst > term > term)] : ((((X412 @ id @ (lam @ (X415 @ sh @ one)) @ id)) = $true) | ? [X419 : subst,X417 : term,X418 : subst] : (((sub @ (X415 @ X419 @ X417) @ X418)) != ((sub @ (sub @ X414 @ (push @ X417 @ X419)) @ X418))) | ? [X422 : subst,X420 : term,X421 : subst] : (((sub @ X414 @ (push @ (sub @ X420 @ X421) @ (comp @ X422 @ X421)))) != ((X415 @ (comp @ X422 @ X421) @ (sub @ X420 @ X421)))) | ? [X416 : term] : (($true = ((X412 @ id @ X416 @ id))) & ($true != ((X412 @ id @ (X415 @ id @ X416) @ id))))))) & ((axshiftcons = $true) | ? [X396 : term,X395 : subst] : (((comp @ sh @ (push @ X396 @ X395))) != X395)) & (! [X396 : term,X395 : subst] : (((comp @ sh @ (push @ X396 @ X395))) = X395) | (axshiftcons != $true)) & (ulamvar1 != $true) & ((substmonoid = $true) | ? [X77 : subst] : (((comp @ X77 @ id)) != X77) | ? [X76 : subst] : (((comp @ id @ X76)) != X76)) & ((! [X77 : subst] : (((comp @ X77 @ id)) = X77) & ! [X76 : subst] : (((comp @ id @ X76)) = X76)) | (substmonoid != $true)) & (hoasapinj2_gthm = $true) & (! [X387 : (term > $o),X386 : term,X385 : (subst > term > subst > $o)] : (($true = ((X387 @ (lam @ X386)))) | ? [X390 : (subst > term > term)] : (! [X392 : subst,X391 : term,X393 : subst] : (((X390 @ (comp @ X393 @ X392) @ (sub @ X391 @ X392))) = ((sub @ (X390 @ X393 @ X391) @ X392))) & ($true != ((X385 @ id @ (lam @ (X390 @ sh @ one)) @ id))) & ! [X394 : term] : (($true = ((X385 @ id @ (X390 @ id @ X394) @ id))) | (((X385 @ id @ X394 @ id)) != $true))) | ? [X388 : term] : ((((X387 @ X388)) = $true) & (((X387 @ (sub @ X386 @ (push @ X388 @ id)))) != $true)) | ? [X389 : term] : (((X387 @ X389)) != ((X385 @ id @ X389 @ id)))) | ? [X384 : term] : (((sub @ X384 @ id)) != X384) | ? [X380 : term] : ! [X381 : (subst > term > term)] : ? [X382 : subst,X383 : term] : (((sub @ X380 @ (push @ X383 @ X382))) != ((X381 @ X382 @ X383))) | (hoasinduction_lem3v2a_lthm != $true)) & ((hoasinduction_lem3v2a_lthm = $true) | (? [X387 : (term > $o),X386 : term,X385 : (subst > term > subst > $o)] : (($true != ((X387 @ (lam @ X386)))) & ! [X390 : (subst > term > term)] : (? [X392 : subst,X391 : term,X393 : subst] : (((X390 @ (comp @ X393 @ X392) @ (sub @ X391 @ X392))) != ((sub @ (X390 @ X393 @ X391) @ X392))) | ($true = ((X385 @ id @ (lam @ (X390 @ sh @ one)) @ id))) | ? [X394 : term] : (($true != ((X385 @ id @ (X390 @ id @ X394) @ id))) & (((X385 @ id @ X394 @ id)) = $true))) & ! [X388 : term] : ((((X387 @ X388)) != $true) | (((X387 @ (sub @ X386 @ (push @ X388 @ id)))) = $true)) & ! [X389 : term] : (((X387 @ X389)) = ((X385 @ id @ X389 @ id)))) & ! [X384 : term] : (((sub @ X384 @ id)) = X384) & ! [X380 : term] : ? [X381 : (subst > term > term)] : ! [X382 : subst,X383 : term] : (((sub @ X380 @ (push @ X383 @ X382))) = ((X381 @ X382 @ X383))))) & (! [X331 : (subst > term > subst > $o),X330 : term] : ((((X331 @ id @ (lam @ (sub @ X330 @ (push @ one @ sh))) @ id)) = $true) | ? [X332 : (subst > term > term)] : (! [X336 : term,X334 : subst,X335 : subst] : (((X332 @ (comp @ X334 @ X335) @ (sub @ X336 @ X335))) = ((sub @ (X332 @ X334 @ X336) @ X335))) & ($true != ((X331 @ id @ (lam @ (X332 @ sh @ one)) @ id))) & ! [X333 : term] : (($true != ((X331 @ id @ X333 @ id))) | ($true = ((X331 @ id @ (X332 @ id @ X333) @ id))))) | ? [X337 : term] : (($true = ((X331 @ id @ X337 @ id))) & ($true != ((X331 @ id @ (sub @ X330 @ (push @ X337 @ id)) @ id))))) | (hoasinduction_lem3aa_lthm != $true)) & ((hoasinduction_lem3aa_lthm = $true) | ? [X331 : (subst > term > subst > $o),X330 : term] : ((((X331 @ id @ (lam @ (sub @ X330 @ (push @ one @ sh))) @ id)) != $true) & ! [X332 : (subst > term > term)] : (? [X336 : term,X334 : subst,X335 : subst] : (((X332 @ (comp @ X334 @ X335) @ (sub @ X336 @ X335))) != ((sub @ (X332 @ X334 @ X336) @ X335))) | ($true = ((X331 @ id @ (lam @ (X332 @ sh @ one)) @ id))) | ? [X333 : term] : (($true = ((X331 @ id @ X333 @ id))) & ($true != ((X331 @ id @ (X332 @ id @ X333) @ id))))) & ! [X337 : term] : (($true != ((X331 @ id @ X337 @ id))) | ($true = ((X331 @ id @ (sub @ X330 @ (push @ X337 @ id)) @ id)))))) & (! [X500 : term,X502 : term,X503 : term,X501 : term] : ((X502 = X503) | (((ap @ (sub @ X502 @ id) @ X501)) != ((ap @ (sub @ X503 @ id) @ X500)))) | (hoasapinj1 != $true)) & ((hoasapinj1 = $true) | ? [X500 : term,X502 : term,X503 : term,X501 : term] : ((X502 != X503) & (((ap @ (sub @ X502 @ id) @ X501)) = ((ap @ (sub @ X503 @ id) @ X500))))) & (hoasinduction_lem3a_gthm = $true) & (! [X54 : term,X52 : (term > $o),X53 : subst] : (? [X58 : term] : (! [X59 : term] : (($true != ((X52 @ X59))) | ($true = ((X52 @ (sub @ X58 @ (push @ X59 @ id)))))) & (((X52 @ (lam @ X58))) != $true)) | ? [X56 : term,X57 : term] : ((((X52 @ X56)) = $true) & ($true = ((X52 @ X57))) & ($true != ((X52 @ (ap @ X56 @ X57))))) | ? [X55 : term] : ((((X52 @ (sub @ X55 @ X53))) != $true) & ($true = ((var @ X55)))) | ($true = ((X52 @ (sub @ X54 @ X53))))) | (induction2lem != $true)) & ((induction2lem = $true) | ? [X54 : term,X52 : (term > $o),X53 : subst] : (! [X58 : term] : (? [X59 : term] : (($true = ((X52 @ X59))) & ($true != ((X52 @ (sub @ X58 @ (push @ X59 @ id)))))) | (((X52 @ (lam @ X58))) = $true)) & ! [X56 : term,X57 : term] : ((((X52 @ X56)) != $true) | ($true != ((X52 @ X57))) | ($true = ((X52 @ (ap @ X56 @ X57))))) & ! [X55 : term] : ((((X52 @ (sub @ X55 @ X53))) = $true) | ($true != ((var @ X55)))) & ($true != ((X52 @ (sub @ X54 @ X53)))))) & (hoasinduction_lem2v2_gthm = $true) & (pushprop_lthm = $true) & (lamnotap != $true) & (((d2subst @ d_id)) = id) & (! [X406 : (term > $o),X408 : term,X409 : (term > $o),X407 : subst,X410 : term] : ((((X406 @ (sub @ X410 @ (push @ X408 @ X407)))) = $true) | ($true != ((X409 @ X410)))) | (pushprop_lem1 != $true)) & ((pushprop_lem1 = $true) | ? [X406 : (term > $o),X408 : term,X409 : (term > $o),X407 : subst,X410 : term] : ((((X406 @ (sub @ X410 @ (push @ X408 @ X407)))) != $true) & ($true = ((X409 @ X410))))) & (((d2term @ d_one)) = ((ap @ (d2term @ d_one) @ (d2term @ d_one)))) & (axapp = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & ((hoasapinj2 = $true) | ? [X378 : term,X377 : term,X376 : term,X379 : term] : ((X377 != X379) & (((ap @ (sub @ X378 @ id) @ X379)) = ((ap @ (sub @ X376 @ id) @ X377))))) & (! [X378 : term,X377 : term,X376 : term,X379 : term] : ((X377 = X379) | (((ap @ (sub @ X378 @ id) @ X379)) != ((ap @ (sub @ X376 @ id) @ X377)))) | (hoasapinj2 != $true)) & (((d2subst @ d_id)) = sh) & (((d2term @ d_one)) = ((lam @ (d2term @ d_one)))) & (! [X497 : subst,X496 : term] : (((sub @ one @ (push @ X496 @ X497))) = X496) | (axvarcons != $true)) & ((axvarcons = $true) | ? [X497 : subst,X496 : term] : (((sub @ one @ (push @ X496 @ X497))) != X496)) & (! [X338 : term] : ? [X339 : (subst > term > term)] : (((X339 @ sh @ one)) = ((sub @ X338 @ (push @ one @ sh)))) | (hoasinduction_lem3b != $true)) & ((hoasinduction_lem3b = $true) | ? [X338 : term] : ! [X339 : (subst > term > term)] : (((X339 @ sh @ one)) != ((sub @ X338 @ (push @ one @ sh))))) & (? [X487 : subst] : (((comp @ X487 @ id)) != X487) | ? [X486 : subst] : (((comp @ id @ X486)) != X486) | (! [X489 : subst] : (((comp @ X489 @ id)) = X489) & ! [X488 : subst] : (((comp @ id @ X488)) = X488)) | (substmonoid_lthm != $true)) & ((substmonoid_lthm = $true) | (! [X487 : subst] : (((comp @ X487 @ id)) = X487) & ! [X486 : subst] : (((comp @ id @ X486)) = X486) & (? [X489 : subst] : (((comp @ X489 @ id)) != X489) | ? [X488 : subst] : (((comp @ id @ X488)) != X488)))) & (axassoc = $true) & (lamnotvar = $true) & (pushprop_lem3v2_lthm = $true) & (termmset_gthm = $true) & ((hoasapinj2_lthm = $true) | (! [X313 : term,X315 : term,X316 : term,X314 : term] : ((X315 = X316) | (((ap @ X313 @ X315)) != ((ap @ X314 @ X316)))) & ? [X320 : term,X317 : term,X319 : term,X318 : term] : ((((ap @ (sub @ X320 @ id) @ X318)) = ((ap @ (sub @ X317 @ id) @ X319))) & (X318 != X319)))) & (? [X313 : term,X315 : term,X316 : term,X314 : term] : ((X315 != X316) & (((ap @ X313 @ X315)) = ((ap @ X314 @ X316)))) | ! [X320 : term,X317 : term,X319 : term,X318 : term] : ((((ap @ (sub @ X320 @ id) @ X318)) != ((ap @ (sub @ X317 @ id) @ X319))) | (X318 = X319)) | (hoasapinj2_lthm != $true)) & (hoasapnotvar = $true) & ! [X474 : d_subst,X473 : d_subst] : ((X473 = X474) | (((d2subst @ X474)) != ((d2subst @ X473)))) & (hoasinduction_lem3_gthm = $true) & (pushprop_lem3v2 = $true) & (! [X117 : (term > $o),X118 : term,X116 : (subst > term > subst > $o)] : (? [X133 : term] : (((X116 @ id @ X133 @ id)) != ((X117 @ X133))) | ? [X125 : subst,X126 : subst,X128 : subst,X127 : term] : ((((X116 @ (comp @ X125 @ X128) @ (sub @ X127 @ X128) @ X126)) = $true) & ($true != ((X116 @ X125 @ X127 @ (comp @ X128 @ X126))))) | ? [X131 : subst,X132 : term,X129 : subst,X130 : subst] : ((((X116 @ (comp @ X129 @ X130) @ (sub @ X132 @ X130) @ X131)) != $true) & (((X116 @ X129 @ X132 @ (comp @ X130 @ X131))) = $true)) | ($true = ((X117 @ (lam @ X118)))) | ? [X124 : term] : (($true = ((X117 @ X124))) & (((X117 @ (sub @ X118 @ (push @ X124 @ id)))) != $true)) | ? [X119 : (subst > term > term)] : (! [X123 : term] : ((((X116 @ id @ X123 @ id)) != $true) | ($true = ((X116 @ id @ (X119 @ id @ X123) @ id)))) & ($true != ((X116 @ id @ (lam @ (X119 @ sh @ one)) @ id))) & ! [X122 : term,X120 : subst,X121 : subst] : (((X119 @ (comp @ X121 @ X120) @ (sub @ X122 @ X120))) = ((sub @ (X119 @ X121 @ X122) @ X120))))) | (hoasinduction_lem3v2 != $true)) & ((hoasinduction_lem3v2 = $true) | ? [X117 : (term > $o),X118 : term,X116 : (subst > term > subst > $o)] : (! [X133 : term] : (((X116 @ id @ X133 @ id)) = ((X117 @ X133))) & ! [X125 : subst,X126 : subst,X128 : subst,X127 : term] : ((((X116 @ (comp @ X125 @ X128) @ (sub @ X127 @ X128) @ X126)) != $true) | ($true = ((X116 @ X125 @ X127 @ (comp @ X128 @ X126))))) & ! [X131 : subst,X132 : term,X129 : subst,X130 : subst] : ((((X116 @ (comp @ X129 @ X130) @ (sub @ X132 @ X130) @ X131)) = $true) | (((X116 @ X129 @ X132 @ (comp @ X130 @ X131))) != $true)) & ($true != ((X117 @ (lam @ X118)))) & ! [X124 : term] : (($true != ((X117 @ X124))) | (((X117 @ (sub @ X118 @ (push @ X124 @ id)))) = $true)) & ! [X119 : (subst > term > term)] : (? [X123 : term] : ((((X116 @ id @ X123 @ id)) = $true) & ($true != ((X116 @ id @ (X119 @ id @ X123) @ id)))) | ($true = ((X116 @ id @ (lam @ (X119 @ sh @ one)) @ id))) | ? [X122 : term,X120 : subst,X121 : subst] : (((X119 @ (comp @ X121 @ X120) @ (sub @ X122 @ X120))) != ((sub @ (X119 @ X121 @ X122) @ X120)))))) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y1 @ Y2) = (Y0 @ id @ Y2 @ id)))))))) & (hoasinduction_lem3v2_gthm = $true) & (! [X0 : term,X1 : (subst > term > subst > $o)] : (? [X2 : (subst > term > term)] : ((((X1 @ id @ (lam @ (X2 @ sh @ one)) @ id)) != $true) & ! [X3 : subst,X5 : term,X4 : subst] : (((sub @ (X2 @ X3 @ X5) @ X4)) = ((X2 @ (comp @ X3 @ X4) @ (sub @ X5 @ X4)))) & ! [X6 : term] : ((((X1 @ id @ X6 @ id)) != $true) | (((X1 @ id @ (X2 @ id @ X6) @ id)) = $true))) | ? [X7 : term] : (($true = ((X1 @ id @ X7 @ id))) & (((X1 @ id @ (sub @ X0 @ (push @ X7 @ id)) @ id)) != $true)) | ($true = ((X1 @ id @ (lam @ (sub @ X0 @ (push @ one @ sh))) @ id)))) | (hoasinduction_lem3aa != $true)) & ((hoasinduction_lem3aa = $true) | ? [X0 : term,X1 : (subst > term > subst > $o)] : (! [X2 : (subst > term > term)] : ((((X1 @ id @ (lam @ (X2 @ sh @ one)) @ id)) = $true) | ? [X3 : subst,X5 : term,X4 : subst] : (((sub @ (X2 @ X3 @ X5) @ X4)) != ((X2 @ (comp @ X3 @ X4) @ (sub @ X5 @ X4)))) | ? [X6 : term] : ((((X1 @ id @ X6 @ id)) = $true) & (((X1 @ id @ (X2 @ id @ X6) @ id)) != $true))) & ! [X7 : term] : (($true != ((X1 @ id @ X7 @ id))) | (((X1 @ id @ (sub @ X0 @ (push @ X7 @ id)) @ id)) = $true)) & ($true != ((X1 @ id @ (lam @ (sub @ X0 @ (push @ one @ sh))) @ id))))) & ! [X149 : d_term] : (d_one = X149) & (hoasinduction_lem1v2 = $true) & (! [X91 : (subst > term > subst > $o),X89 : term,X90 : (term > $o)] : (? [X106 : subst,X103 : subst,X105 : subst,X104 : term] : (($true != ((X91 @ X106 @ X104 @ (comp @ X103 @ X105)))) & ($true = ((X91 @ (comp @ X106 @ X103) @ (sub @ X104 @ X103) @ X105)))) | ? [X101 : subst,X99 : subst,X102 : term,X100 : subst] : (($true = ((X91 @ X99 @ X102 @ (comp @ X101 @ X100)))) & ($true != ((X91 @ (comp @ X99 @ X101) @ (sub @ X102 @ X101) @ X100)))) | (((X90 @ (lam @ X89))) = $true) | ? [X97 : term] : (((X91 @ id @ X97 @ id)) != ((X90 @ X97))) | ? [X92 : (subst > term > term)] : (! [X96 : term] : ((((X91 @ id @ X96 @ id)) != $true) | ($true = ((X91 @ id @ (X92 @ id @ X96) @ id)))) & ! [X95 : subst,X94 : term,X93 : subst] : (((sub @ (X92 @ X95 @ X94) @ X93)) = ((X92 @ (comp @ X95 @ X93) @ (sub @ X94 @ X93)))) & (((X91 @ id @ (lam @ (X92 @ sh @ one)) @ id)) != $true)) | ? [X98 : term] : (($true != ((X90 @ (sub @ X89 @ (push @ X98 @ id))))) & ($true = ((X90 @ X98))))) | ? [X88 : term] : (((sub @ X88 @ id)) != X88) | (hoasinduction_lem3v2_lthm != $true)) & ((hoasinduction_lem3v2_lthm = $true) | (? [X91 : (subst > term > subst > $o),X89 : term,X90 : (term > $o)] : (! [X106 : subst,X103 : subst,X105 : subst,X104 : term] : (($true = ((X91 @ X106 @ X104 @ (comp @ X103 @ X105)))) | ($true != ((X91 @ (comp @ X106 @ X103) @ (sub @ X104 @ X103) @ X105)))) & ! [X101 : subst,X99 : subst,X102 : term,X100 : subst] : (($true != ((X91 @ X99 @ X102 @ (comp @ X101 @ X100)))) | ($true = ((X91 @ (comp @ X99 @ X101) @ (sub @ X102 @ X101) @ X100)))) & (((X90 @ (lam @ X89))) != $true) & ! [X97 : term] : (((X91 @ id @ X97 @ id)) = ((X90 @ X97))) & ! [X92 : (subst > term > term)] : (? [X96 : term] : ((((X91 @ id @ X96 @ id)) = $true) & ($true != ((X91 @ id @ (X92 @ id @ X96) @ id)))) | ? [X95 : subst,X94 : term,X93 : subst] : (((sub @ (X92 @ X95 @ X94) @ X93)) != ((X92 @ (comp @ X95 @ X93) @ (sub @ X94 @ X93)))) | (((X91 @ id @ (lam @ (X92 @ sh @ one)) @ id)) = $true)) & ! [X98 : term] : (($true = ((X90 @ (sub @ X89 @ (push @ X98 @ id))))) | ($true != ((X90 @ X98))))) & ! [X88 : term] : (((sub @ X88 @ id)) = X88))) & ((axidl = $true) | ? [X9 : subst] : (((comp @ id @ X9)) != X9)) & (! [X9 : subst] : (((comp @ id @ X9)) = X9) | (axidl != $true)) & (hoasapnotvar_lthm = $true) & (hoasinduction_lem2_lthm = $true) & (! [X475 : term,X477 : subst,X476 : (term > $o)] : ? [X478 : (term > $o)] : ! [X479 : term] : (((X476 @ (sub @ X479 @ (push @ X475 @ X477)))) = ((X478 @ X479))) | (pushprop_lem0 != $true)) & ((pushprop_lem0 = $true) | ? [X475 : term,X477 : subst,X476 : (term > $o)] : ! [X478 : (term > $o)] : ? [X479 : term] : (((X476 @ (sub @ X479 @ (push @ X475 @ X477)))) != ((X478 @ X479))))),
  inference(flattening,[],[f57])).
thf(f59,plain,(
  (pushprop_gthm = $true) & (? [X0 : term] : (((sub @ X0 @ id)) != X0) | ? [X1 : term,X2 : (subst > term > subst > $o)] : ((((X2 @ id @ (lam @ (sub @ X1 @ (push @ one @ sh))) @ id)) != $true) & ! [X3 : (subst > term > term)] : (? [X4 : term] : ((((X2 @ id @ (X3 @ id @ X4) @ id)) != $true) & ($true = ((X2 @ id @ X4 @ id)))) | ? [X5 : subst,X6 : term,X7 : subst] : (((sub @ (X3 @ X7 @ X6) @ X5)) != ((X3 @ (comp @ X7 @ X5) @ (sub @ X6 @ X5)))) | ($true = ((X2 @ id @ (lam @ (X3 @ sh @ one)) @ id)))) & ! [X8 : term] : (($true != ((X2 @ id @ X8 @ id))) | ($true = ((X2 @ id @ (sub @ X1 @ (push @ X8 @ id)) @ id))))) | ($true = sP9) | (hoasinduction_lem3_lthm != $true)) & ((hoasinduction_lem3_lthm = $true) | (! [X9 : term] : (((sub @ X9 @ id)) = X9) & ! [X10 : term,X11 : (subst > term > subst > $o)] : (($true = ((X11 @ id @ (lam @ (sub @ X10 @ (push @ one @ sh))) @ id))) | ? [X12 : (subst > term > term)] : (! [X13 : term] : ((((X11 @ id @ (X12 @ id @ X13) @ id)) = $true) | (((X11 @ id @ X13 @ id)) != $true)) & ! [X14 : subst,X15 : term,X16 : subst] : (((sub @ (X12 @ X16 @ X15) @ X14)) = ((X12 @ (comp @ X16 @ X14) @ (sub @ X15 @ X14)))) & ($true != ((X11 @ id @ (lam @ (X12 @ sh @ one)) @ id)))) | ? [X17 : term] : (($true = ((X11 @ id @ X17 @ id))) & (((X11 @ id @ (sub @ X10 @ (push @ X17 @ id)) @ id)) != $true))) & ($true != sP9))) & (! [X18 : (subst > term > subst > $o)] : ? [X19 : (term > $o)] : ! [X20 : term] : (((X19 @ X20)) = ((X18 @ id @ X20 @ id))) | (hoasinduction_lem0 != $true)) & ((hoasinduction_lem0 = $true) | ? [X21 : (subst > term > subst > $o)] : ! [X22 : (term > $o)] : ? [X23 : term] : (((X22 @ X23)) != ((X21 @ id @ X23 @ id)))) & ((hoaslaminj_lthm = $true) | (? [X24 : subst,X25 : (subst > term > term),X26 : (subst > term > term),X27 : term] : (! [X28 : subst,X29 : subst,X30 : term] : (((sub @ (X26 @ X28 @ X30) @ X29)) = ((X26 @ (comp @ X28 @ X29) @ (sub @ X30 @ X29)))) & (((X26 @ X24 @ X27)) != ((X25 @ X24 @ X27))) & (((lam @ (X25 @ sh @ one))) = ((lam @ (X26 @ sh @ one)))) & ! [X31 : subst,X32 : term,X33 : subst] : (((sub @ (X25 @ X31 @ X32) @ X33)) = ((X25 @ (comp @ X31 @ X33) @ (sub @ X32 @ X33))))) & ! [X34 : term,X35 : term] : ((((lam @ X34)) != ((lam @ X35))) | (X34 = X35)) & ! [X36 : subst,X37 : term] : (((comp @ sh @ (push @ X37 @ X36))) = X36) & ! [X38 : term,X39 : subst] : (((sub @ one @ (push @ X38 @ X39))) = X38))) & (! [X40 : subst,X41 : (subst > term > term),X42 : (subst > term > term),X43 : term] : (? [X44 : subst,X45 : subst,X46 : term] : (((sub @ (X42 @ X44 @ X46) @ X45)) != ((X42 @ (comp @ X44 @ X45) @ (sub @ X46 @ X45)))) | (((X41 @ X40 @ X43)) = ((X42 @ X40 @ X43))) | (((lam @ (X42 @ sh @ one))) != ((lam @ (X41 @ sh @ one)))) | ? [X47 : subst,X48 : term,X49 : subst] : (((sub @ (X41 @ X47 @ X48) @ X49)) != ((X41 @ (comp @ X47 @ X49) @ (sub @ X48 @ X49))))) | ? [X50 : term,X51 : term] : ((((lam @ X51)) = ((lam @ X50))) & (X50 != X51)) | ? [X52 : subst,X53 : term] : (((comp @ sh @ (push @ X53 @ X52))) != X52) | ? [X54 : term,X55 : subst] : (((sub @ one @ (push @ X54 @ X55))) != X54) | (hoaslaminj_lthm != $true)) & (((d2term @ d_one)) = ((sub @ (d2term @ d_one) @ (d2subst @ d_id)))) & (hoaslamnotap_gthm = $true) & (pushprop_lem2v2_lthm = $true) & (! [X56 : subst,X57 : (subst > term > term),X58 : term,X59 : (subst > term > term)] : (? [X60 : subst,X61 : term,X62 : subst] : (((sub @ (X59 @ X60 @ X61) @ X62)) != ((X59 @ (comp @ X60 @ X62) @ (sub @ X61 @ X62)))) | ? [X63 : term,X64 : subst,X65 : subst] : (((X57 @ (comp @ X65 @ X64) @ (sub @ X63 @ X64))) != ((sub @ (X57 @ X65 @ X63) @ X64))) | (((X59 @ X56 @ X58)) = ((X57 @ X56 @ X58))) | (((lam @ (X57 @ sh @ one))) != ((lam @ (X59 @ sh @ one))))) | (hoaslaminj != $true)) & ((hoaslaminj = $true) | ? [X66 : subst,X67 : (subst > term > term),X68 : term,X69 : (subst > term > term)] : (! [X70 : subst,X71 : term,X72 : subst] : (((X69 @ (comp @ X70 @ X72) @ (sub @ X71 @ X72))) = ((sub @ (X69 @ X70 @ X71) @ X72))) & ! [X73 : term,X74 : subst,X75 : subst] : (((sub @ (X67 @ X75 @ X73) @ X74)) = ((X67 @ (comp @ X75 @ X74) @ (sub @ X73 @ X74)))) & (((X69 @ X66 @ X68)) != ((X67 @ X66 @ X68))) & (((lam @ (X67 @ sh @ one))) = ((lam @ (X69 @ sh @ one)))))) & ! [X76 : term] : ? [X77 : d_term] : (((d2term @ X77)) = X76) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & ((hoasinduction_no_psi_cond = $true) | ? [X78 : (subst > term > subst > $o),X79 : term] : (($true != ((X78 @ id @ X79 @ id))) & ! [X80 : term,X81 : term] : ((((X78 @ id @ X80 @ id)) != $true) | (((X78 @ id @ X81 @ id)) != $true) | ($true = ((X78 @ id @ (ap @ (sub @ X81 @ id) @ X80) @ id)))) & ! [X82 : (subst > term > term)] : (? [X83 : term] : (($true = ((X78 @ id @ X83 @ id))) & ($true != ((X78 @ id @ (X82 @ id @ X83) @ id)))) | ? [X84 : subst,X85 : subst,X86 : term] : (((sub @ (X82 @ X84 @ X86) @ X85)) != ((X82 @ (comp @ X84 @ X85) @ (sub @ X86 @ X85)))) | ($true = ((X78 @ id @ (lam @ (X82 @ sh @ one)) @ id)))))) & (! [X87 : (subst > term > subst > $o),X88 : term] : (($true = ((X87 @ id @ X88 @ id))) | ? [X89 : term,X90 : term] : (($true = ((X87 @ id @ X89 @ id))) & (((X87 @ id @ X90 @ id)) = $true) & ($true != ((X87 @ id @ (ap @ (sub @ X90 @ id) @ X89) @ id)))) | ? [X91 : (subst > term > term)] : (! [X92 : term] : (($true != ((X87 @ id @ X92 @ id))) | (((X87 @ id @ (X91 @ id @ X92) @ id)) = $true)) & ! [X93 : subst,X94 : subst,X95 : term] : (((X91 @ (comp @ X93 @ X94) @ (sub @ X95 @ X94))) = ((sub @ (X91 @ X93 @ X95) @ X94))) & ($true != ((X87 @ id @ (lam @ (X91 @ sh @ one)) @ id))))) | (hoasinduction_no_psi_cond != $true)) & (hoasapinj1_gthm = $true) & (hoaslamnotvar = $true) & ((axscons = $true) | ? [X96 : subst] : (((push @ (sub @ one @ X96) @ (comp @ sh @ X96))) != X96)) & (! [X97 : subst] : (((push @ (sub @ one @ X97) @ (comp @ sh @ X97))) = X97) | (axscons != $true)) & (hoasinduction_lem1_lthm = $true) & (hoaslamnotap_lthm = $true) & (! [X98 : term] : (((sub @ X98 @ id)) = X98) | (termmset != $true)) & ((termmset = $true) | ? [X99 : term] : (((sub @ X99 @ id)) != X99)) & (((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id))) != $true) & (induction2lem_gthm = $true) & ((termmset_lthm = $true) | (! [X100 : term] : (((sub @ X100 @ id)) = X100) & ? [X101 : term] : (((sub @ X101 @ id)) != X101))) & (? [X102 : term] : (((sub @ X102 @ id)) != X102) | ! [X103 : term] : (((sub @ X103 @ id)) = X103) | (termmset_lthm != $true)) & ((hoasinduction_lem2 = $true) | ? [X104 : (subst > term > subst > $o),X105 : term,X106 : term] : (! [X107 : term,X108 : term] : ((((X104 @ id @ (ap @ (sub @ X107 @ id) @ X108) @ id)) = $true) | (((X104 @ id @ X108 @ id)) != $true) | (((X104 @ id @ X107 @ id)) != $true)) & ($true = ((X104 @ id @ X105 @ id))) & ! [X109 : subst,X110 : subst,X111 : term,X112 : subst] : ((((X104 @ (comp @ X110 @ X109) @ (sub @ X111 @ X109) @ X112)) = $true) | ($true != ((X104 @ X110 @ X111 @ (comp @ X109 @ X112))))) & ! [X113 : subst,X114 : subst,X115 : term,X116 : subst] : (($true = ((X104 @ X116 @ X115 @ (comp @ X113 @ X114)))) | ($true != ((X104 @ (comp @ X116 @ X113) @ (sub @ X115 @ X113) @ X114)))) & (((X104 @ id @ (ap @ X106 @ X105) @ id)) != $true) & ($true = ((X104 @ id @ X106 @ id))))) & (! [X117 : (subst > term > subst > $o),X118 : term,X119 : term] : (? [X120 : term,X121 : term] : ((((X117 @ id @ (ap @ (sub @ X120 @ id) @ X121) @ id)) != $true) & (((X117 @ id @ X121 @ id)) = $true) & ($true = ((X117 @ id @ X120 @ id)))) | ($true != ((X117 @ id @ X118 @ id))) | ? [X122 : subst,X123 : subst,X124 : term,X125 : subst] : (($true != ((X117 @ (comp @ X123 @ X122) @ (sub @ X124 @ X122) @ X125))) & ($true = ((X117 @ X123 @ X124 @ (comp @ X122 @ X125))))) | ? [X126 : subst,X127 : subst,X128 : term,X129 : subst] : (($true != ((X117 @ X129 @ X128 @ (comp @ X126 @ X127)))) & ($true = ((X117 @ (comp @ X129 @ X126) @ (sub @ X128 @ X126) @ X127)))) | ($true = ((X117 @ id @ (ap @ X119 @ X118) @ id))) | (((X117 @ id @ X119 @ id)) != $true)) | (hoasinduction_lem2 != $true)) & ((hoasinduction_lthm = $true) | (! [X130 : term,X131 : (term > $o)] : ((((X131 @ X130)) = $true) | ? [X132 : term,X133 : term] : (($true != ((X131 @ (ap @ X132 @ X133)))) & (((X131 @ X133)) = $true) & ($true = ((X131 @ X132)))) | ? [X134 : term] : ((((X131 @ X134)) != $true) & (((var @ X134)) = $true)) | ? [X135 : term] : (! [X136 : term] : ((((X131 @ (sub @ X135 @ (push @ X136 @ id)))) = $true) | (((X131 @ X136)) != $true)) & (((X131 @ (lam @ X135))) != $true))) & ! [X137 : term,X138 : term,X139 : (subst > term > subst > $o)] : (? [X140 : subst,X141 : term,X142 : subst,X143 : subst] : (($true = ((X139 @ (comp @ X142 @ X140) @ (sub @ X141 @ X140) @ X143))) & (((X139 @ X142 @ X141 @ (comp @ X140 @ X143))) != $true)) | ? [X144 : term,X145 : term] : ((((X139 @ id @ X144 @ id)) = $true) & (((X139 @ id @ X145 @ id)) = $true) & (((X139 @ id @ (ap @ (sub @ X145 @ id) @ X144) @ id)) != $true)) | ? [X146 : subst,X147 : subst,X148 : term,X149 : subst] : (($true != ((X139 @ (comp @ X147 @ X146) @ (sub @ X148 @ X146) @ X149))) & (((X139 @ X147 @ X148 @ (comp @ X146 @ X149))) = $true)) | ($true != ((X139 @ id @ X138 @ id))) | (((X139 @ id @ (ap @ X138 @ X137) @ id)) = $true) | ($true != ((X139 @ id @ X137 @ id)))) & (sP8 != $true) & ($true != sP7))) & (? [X150 : term,X151 : (term > $o)] : (($true != ((X151 @ X150))) & ! [X152 : term,X153 : term] : (($true = ((X151 @ (ap @ X152 @ X153)))) | (((X151 @ X153)) != $true) | ($true != ((X151 @ X152)))) & ! [X154 : term] : (($true = ((X151 @ X154))) | ($true != ((var @ X154)))) & ! [X155 : term] : (? [X156 : term] : (($true != ((X151 @ (sub @ X155 @ (push @ X156 @ id))))) & (((X151 @ X156)) = $true)) | (((X151 @ (lam @ X155))) = $true))) | ? [X157 : term,X158 : term,X159 : (subst > term > subst > $o)] : (! [X160 : subst,X161 : term,X162 : subst,X163 : subst] : ((((X159 @ (comp @ X162 @ X160) @ (sub @ X161 @ X160) @ X163)) != $true) | ($true = ((X159 @ X162 @ X161 @ (comp @ X160 @ X163))))) & ! [X164 : term,X165 : term] : ((((X159 @ id @ X164 @ id)) != $true) | ($true != ((X159 @ id @ X165 @ id))) | (((X159 @ id @ (ap @ (sub @ X165 @ id) @ X164) @ id)) = $true)) & ! [X166 : subst,X167 : subst,X168 : term,X169 : subst] : (($true = ((X159 @ (comp @ X167 @ X166) @ (sub @ X168 @ X166) @ X169))) | ($true != ((X159 @ X167 @ X168 @ (comp @ X166 @ X169))))) & (((X159 @ id @ X158 @ id)) = $true) & (((X159 @ id @ (ap @ X158 @ X157) @ id)) != $true) & ($true = ((X159 @ id @ X157 @ id)))) | (sP8 = $true) | ($true = sP7) | (hoasinduction_lthm != $true)) & (pushprop_lem1v2_gthm = $true) & (((d2subst @ d_id)) = ((comp @ (d2subst @ d_id) @ (d2subst @ d_id)))) & (hoasinduction_lem1_gthm = $true) & (! [X170 : term,X171 : term,X172 : term,X173 : term] : ((X170 = X173) | (((ap @ X170 @ X171)) != ((ap @ X173 @ X172)))) | (apinj1 != $true)) & ((apinj1 = $true) | ? [X174 : term,X175 : term,X176 : term,X177 : term] : ((X174 != X177) & (((ap @ X177 @ X176)) = ((ap @ X174 @ X175))))) & (hoasapnotvar_gthm = $true) & (axmap = $true) & (($true = sP5) | (induction2_lthm != $true)) & ((induction2_lthm = $true) | ($true != sP5)) & (substmonoid_gthm = $true) & (axvarshift = $true) & (pushprop_lem0_gthm = $true) & (! [X178 : term,X179 : (term > $o),X180 : term,X181 : (subst > term > subst > $o)] : (($true = ((X179 @ (ap @ X178 @ X180)))) | ($true != ((X179 @ X178))) | ? [X182 : term,X183 : term] : ((((X181 @ id @ X183 @ id)) = $true) & ($true = ((X181 @ id @ X182 @ id))) & (((X181 @ id @ (ap @ (sub @ X183 @ id) @ X182) @ id)) != $true)) | ? [X184 : term,X185 : subst,X186 : subst,X187 : subst] : ((((X181 @ (comp @ X187 @ X186) @ (sub @ X184 @ X186) @ X185)) = $true) & (((X181 @ X187 @ X184 @ (comp @ X186 @ X185))) != $true)) | ($true != ((X179 @ X180))) | ? [X188 : subst,X189 : term,X190 : subst,X191 : subst] : ((((X181 @ (comp @ X190 @ X188) @ (sub @ X189 @ X188) @ X191)) != $true) & (((X181 @ X190 @ X189 @ (comp @ X188 @ X191))) = $true)) | ? [X192 : term] : (((X181 @ id @ X192 @ id)) != ((X179 @ X192)))) | (hoasinduction_lem2v2 != $true)) & ((hoasinduction_lem2v2 = $true) | ? [X193 : term,X194 : (term > $o),X195 : term,X196 : (subst > term > subst > $o)] : (($true != ((X194 @ (ap @ X193 @ X195)))) & (((X194 @ X193)) = $true) & ! [X197 : term,X198 : term] : (($true != ((X196 @ id @ X198 @ id))) | ($true != ((X196 @ id @ X197 @ id))) | ($true = ((X196 @ id @ (ap @ (sub @ X198 @ id) @ X197) @ id)))) & ! [X199 : term,X200 : subst,X201 : subst,X202 : subst] : (($true != ((X196 @ (comp @ X202 @ X201) @ (sub @ X199 @ X201) @ X200))) | (((X196 @ X202 @ X199 @ (comp @ X201 @ X200))) = $true)) & ($true = ((X194 @ X195))) & ! [X203 : subst,X204 : term,X205 : subst,X206 : subst] : (($true = ((X196 @ (comp @ X205 @ X203) @ (sub @ X204 @ X203) @ X206))) | (((X196 @ X205 @ X204 @ (comp @ X203 @ X206))) != $true)) & ! [X207 : term] : (((X194 @ X207)) = ((X196 @ id @ X207 @ id))))) & (((var @ (d2term @ d_one))) != $true) & (! [X208 : term] : (((sub @ X208 @ id)) = X208) | (axvarid != $true)) & ((axvarid = $true) | ? [X209 : term] : (((sub @ X209 @ id)) != X209)) & (? [X210 : term] : (((sub @ X210 @ id)) != X210) | ! [X211 : term,X212 : (subst > term > subst > $o)] : (? [X213 : term] : ((((X212 @ id @ X213 @ id)) = $true) & (((X212 @ id @ (sub @ X211 @ (push @ X213 @ id)) @ id)) != $true)) | ? [X214 : (subst > term > term)] : (($true != ((X212 @ id @ (lam @ (X214 @ sh @ one)) @ id))) & ! [X215 : subst,X216 : subst,X217 : term] : (((sub @ (X214 @ X216 @ X217) @ X215)) = ((X214 @ (comp @ X216 @ X215) @ (sub @ X217 @ X215)))) & ! [X218 : term] : (($true = ((X212 @ id @ (X214 @ id @ X218) @ id))) | ($true != ((X212 @ id @ X218 @ id))))) | ($true = ((X212 @ id @ (lam @ X211) @ id)))) | ? [X219 : term,X220 : (subst > term > subst > $o)] : (! [X221 : (subst > term > term)] : (? [X222 : term] : ((((X220 @ id @ (X221 @ id @ X222) @ id)) != $true) & ($true = ((X220 @ id @ X222 @ id)))) | (((X220 @ id @ (lam @ (X221 @ sh @ one)) @ id)) = $true) | ? [X223 : subst,X224 : term,X225 : subst] : (((X221 @ (comp @ X223 @ X225) @ (sub @ X224 @ X225))) != ((sub @ (X221 @ X223 @ X224) @ X225)))) & ($true != ((X220 @ id @ (lam @ (sub @ X219 @ (push @ one @ sh))) @ id))) & ! [X226 : term] : ((((X220 @ id @ X226 @ id)) != $true) | ($true = ((X220 @ id @ (sub @ X219 @ (push @ X226 @ id)) @ id))))) | (hoasinduction_lem3a_lthm != $true)) & ((hoasinduction_lem3a_lthm = $true) | (! [X227 : term] : (((sub @ X227 @ id)) = X227) & ? [X228 : term,X229 : (subst > term > subst > $o)] : (! [X230 : term] : ((((X229 @ id @ X230 @ id)) != $true) | (((X229 @ id @ (sub @ X228 @ (push @ X230 @ id)) @ id)) = $true)) & ! [X231 : (subst > term > term)] : ((((X229 @ id @ (lam @ (X231 @ sh @ one)) @ id)) = $true) | ? [X232 : subst,X233 : subst,X234 : term] : (((X231 @ (comp @ X233 @ X232) @ (sub @ X234 @ X232))) != ((sub @ (X231 @ X233 @ X234) @ X232))) | ? [X235 : term] : (($true != ((X229 @ id @ (X231 @ id @ X235) @ id))) & (((X229 @ id @ X235 @ id)) = $true))) & ($true != ((X229 @ id @ (lam @ X228) @ id)))) & ! [X236 : term,X237 : (subst > term > subst > $o)] : (? [X238 : (subst > term > term)] : (! [X239 : term] : (($true = ((X237 @ id @ (X238 @ id @ X239) @ id))) | ($true != ((X237 @ id @ X239 @ id)))) & ($true != ((X237 @ id @ (lam @ (X238 @ sh @ one)) @ id))) & ! [X240 : subst,X241 : term,X242 : subst] : (((X238 @ (comp @ X240 @ X242) @ (sub @ X241 @ X242))) = ((sub @ (X238 @ X240 @ X241) @ X242)))) | ($true = ((X237 @ id @ (lam @ (sub @ X236 @ (push @ one @ sh))) @ id))) | ? [X243 : term] : (($true = ((X237 @ id @ X243 @ id))) & (((X237 @ id @ (sub @ X236 @ (push @ X243 @ id)) @ id)) != $true))))) & ((hoasinduction_lem3v2a = $true) | ? [X244 : (subst > term > subst > $o),X245 : (term > $o),X246 : term] : (! [X247 : term] : (((X245 @ X247)) = ((X244 @ id @ X247 @ id))) & ($true != ((X245 @ (lam @ X246)))) & ! [X248 : (subst > term > term)] : (? [X249 : term] : (($true != ((X244 @ id @ (X248 @ id @ X249) @ id))) & ($true = ((X244 @ id @ X249 @ id)))) | ($true = ((X244 @ id @ (lam @ (X248 @ sh @ one)) @ id))) | ? [X250 : subst,X251 : subst,X252 : term] : (((X248 @ (comp @ X251 @ X250) @ (sub @ X252 @ X250))) != ((sub @ (X248 @ X251 @ X252) @ X250)))) & ! [X253 : term] : ((((X245 @ X253)) != $true) | ($true = ((X245 @ (sub @ X246 @ (push @ X253 @ id)))))))) & (! [X254 : (subst > term > subst > $o),X255 : (term > $o),X256 : term] : (? [X257 : term] : (((X254 @ id @ X257 @ id)) != ((X255 @ X257))) | ($true = ((X255 @ (lam @ X256)))) | ? [X258 : (subst > term > term)] : (! [X259 : term] : (($true = ((X254 @ id @ (X258 @ id @ X259) @ id))) | ($true != ((X254 @ id @ X259 @ id)))) & (((X254 @ id @ (lam @ (X258 @ sh @ one)) @ id)) != $true) & ! [X260 : subst,X261 : subst,X262 : term] : (((sub @ (X258 @ X261 @ X262) @ X260)) = ((X258 @ (comp @ X261 @ X260) @ (sub @ X262 @ X260))))) | ? [X263 : term] : (($true = ((X255 @ X263))) & ($true != ((X255 @ (sub @ X256 @ (push @ X263 @ id))))))) | (hoasinduction_lem3v2a != $true)) & (pushprop_lem2v2 = $true) & ((hoasinduction_no_psi_cond_lthm = $true) | (! [X264 : term,X265 : (term > $o)] : (? [X266 : term,X267 : term] : (($true = ((X265 @ X266))) & ($true != ((X265 @ (ap @ X267 @ X266)))) & ($true = ((X265 @ X267)))) | ? [X268 : term] : (($true != ((X265 @ X268))) & ($true = ((var @ X268)))) | ? [X269 : term] : (($true != ((X265 @ (lam @ X269)))) & ! [X270 : term] : (($true != ((X265 @ X270))) | (((X265 @ (sub @ X269 @ (push @ X270 @ id)))) = $true))) | ($true = ((X265 @ X264)))) & ($true != sP4) & ! [X271 : (subst > term > subst > $o)] : ? [X272 : (term > $o)] : ! [X273 : term] : (((X272 @ X273)) = ((X271 @ id @ X273 @ id))) & ! [X274 : term,X275 : (subst > term > subst > $o),X276 : (term > $o)] : (? [X277 : (subst > term > term)] : (($true != ((X275 @ id @ (lam @ (X277 @ sh @ one)) @ id))) & ! [X278 : term] : (($true != ((X275 @ id @ X278 @ id))) | ($true = ((X275 @ id @ (X277 @ id @ X278) @ id)))) & ! [X279 : subst,X280 : term,X281 : subst] : (((X277 @ (comp @ X281 @ X279) @ (sub @ X280 @ X279))) = ((sub @ (X277 @ X281 @ X280) @ X279)))) | ? [X282 : term] : (($true != ((X276 @ (sub @ X274 @ (push @ X282 @ id))))) & ($true = ((X276 @ X282)))) | (((X276 @ (lam @ X274))) = $true) | ? [X283 : term] : (((X275 @ id @ X283 @ id)) != ((X276 @ X283)))) & ! [X284 : term] : (((sub @ X284 @ id)) = X284))) & (? [X285 : term,X286 : (term > $o)] : (! [X287 : term,X288 : term] : ((((X286 @ X287)) != $true) | (((X286 @ (ap @ X288 @ X287))) = $true) | (((X286 @ X288)) != $true)) & ! [X289 : term] : ((((X286 @ X289)) = $true) | ($true != ((var @ X289)))) & ! [X290 : term] : ((((X286 @ (lam @ X290))) = $true) | ? [X291 : term] : ((((X286 @ X291)) = $true) & ($true != ((X286 @ (sub @ X290 @ (push @ X291 @ id))))))) & (((X286 @ X285)) != $true)) | ($true = sP4) | ? [X292 : (subst > term > subst > $o)] : ! [X293 : (term > $o)] : ? [X294 : term] : (((X292 @ id @ X294 @ id)) != ((X293 @ X294))) | ? [X295 : term,X296 : (subst > term > subst > $o),X297 : (term > $o)] : (! [X298 : (subst > term > term)] : ((((X296 @ id @ (lam @ (X298 @ sh @ one)) @ id)) = $true) | ? [X299 : term] : (($true = ((X296 @ id @ X299 @ id))) & (((X296 @ id @ (X298 @ id @ X299) @ id)) != $true)) | ? [X300 : subst,X301 : term,X302 : subst] : (((sub @ (X298 @ X302 @ X301) @ X300)) != ((X298 @ (comp @ X302 @ X300) @ (sub @ X301 @ X300))))) & ! [X303 : term] : ((((X297 @ (sub @ X295 @ (push @ X303 @ id)))) = $true) | ($true != ((X297 @ X303)))) & (((X297 @ (lam @ X295))) != $true) & ! [X304 : term] : (((X296 @ id @ X304 @ id)) = ((X297 @ X304)))) | ? [X305 : term] : (((sub @ X305 @ id)) != X305) | (hoasinduction_no_psi_cond_lthm != $true)) & (hoaslaminj_gthm = $true) & (pushprop_lthm_orig = $true) & (induction2_gthm = $true) & ((hoasinduction_lem3 = $true) | ? [X306 : (subst > term > subst > $o),X307 : term] : (! [X308 : (subst > term > term)] : (($true = ((X306 @ id @ (lam @ (X308 @ sh @ one)) @ id))) | ? [X309 : subst,X310 : subst,X311 : term] : (((X308 @ (comp @ X310 @ X309) @ (sub @ X311 @ X309))) != ((sub @ (X308 @ X310 @ X311) @ X309))) | ? [X312 : term] : (($true != ((X306 @ id @ (X308 @ id @ X312) @ id))) & ($true = ((X306 @ id @ X312 @ id))))) & ! [X313 : subst,X314 : subst,X315 : subst,X316 : term] : ((((X306 @ X313 @ X316 @ (comp @ X315 @ X314))) != $true) | ($true = ((X306 @ (comp @ X313 @ X315) @ (sub @ X316 @ X315) @ X314)))) & ! [X317 : subst,X318 : subst,X319 : subst,X320 : term] : (($true = ((X306 @ X317 @ X320 @ (comp @ X318 @ X319)))) | ($true != ((X306 @ (comp @ X317 @ X318) @ (sub @ X320 @ X318) @ X319)))) & ! [X321 : term] : ((((X306 @ id @ X321 @ id)) != $true) | (((X306 @ id @ (sub @ X307 @ (push @ X321 @ id)) @ id)) = $true)) & ($true != ((X306 @ id @ (lam @ X307) @ id))))) & (! [X322 : (subst > term > subst > $o),X323 : term] : (? [X324 : (subst > term > term)] : (($true != ((X322 @ id @ (lam @ (X324 @ sh @ one)) @ id))) & ! [X325 : subst,X326 : subst,X327 : term] : (((sub @ (X324 @ X326 @ X327) @ X325)) = ((X324 @ (comp @ X326 @ X325) @ (sub @ X327 @ X325)))) & ! [X328 : term] : (($true = ((X322 @ id @ (X324 @ id @ X328) @ id))) | ($true != ((X322 @ id @ X328 @ id))))) | ? [X329 : subst,X330 : subst,X331 : subst,X332 : term] : (($true = ((X322 @ X329 @ X332 @ (comp @ X331 @ X330)))) & ($true != ((X322 @ (comp @ X329 @ X331) @ (sub @ X332 @ X331) @ X330)))) | ? [X333 : subst,X334 : subst,X335 : subst,X336 : term] : (($true != ((X322 @ X333 @ X336 @ (comp @ X334 @ X335)))) & ($true = ((X322 @ (comp @ X333 @ X334) @ (sub @ X336 @ X334) @ X335)))) | ? [X337 : term] : (($true = ((X322 @ id @ X337 @ id))) & (((X322 @ id @ (sub @ X323 @ (push @ X337 @ id)) @ id)) != $true)) | ($true = ((X322 @ id @ (lam @ X323) @ id)))) | (hoasinduction_lem3 != $true)) & ((hoasinduction_lem0_lthm = $true) | ? [X338 : (subst > term > subst > $o)] : ! [X339 : (term > $o)] : ? [X340 : term] : (((X338 @ id @ X340 @ id)) != ((X339 @ X340)))) & (! [X341 : (subst > term > subst > $o)] : ? [X342 : (term > $o)] : ! [X343 : term] : (((X342 @ X343)) = ((X341 @ id @ X343 @ id))) | (hoasinduction_lem0_lthm != $true)) & (hoasinduction_lem1 = $true) & (? [X344 : term,X345 : subst] : (((comp @ sh @ (push @ X344 @ X345))) != X345) | ! [X346 : term,X347 : (term > $o),X348 : (term > $o),X349 : subst,X350 : term] : ((((X347 @ X346)) != $true) | ($true = ((X348 @ (sub @ X346 @ (push @ X350 @ X349)))))) | ? [X351 : term,X352 : subst] : (((sub @ one @ (push @ X351 @ X352))) != X351) | (pushprop_lem1_lthm != $true)) & ((pushprop_lem1_lthm = $true) | (! [X353 : term,X354 : subst] : (((comp @ sh @ (push @ X353 @ X354))) = X354) & ? [X355 : term,X356 : (term > $o),X357 : (term > $o),X358 : subst,X359 : term] : (($true = ((X356 @ X355))) & ($true != ((X357 @ (sub @ X355 @ (push @ X359 @ X358)))))) & ! [X360 : term,X361 : subst] : (((sub @ one @ (push @ X360 @ X361))) = X360))) & (((d2subst @ d_id)) = ((push @ (d2term @ d_one) @ (d2subst @ d_id)))) & (ulamvarsh = $true) & ((shinj = $true) | ? [X362 : term,X363 : term] : ((((sub @ X362 @ sh)) = ((sub @ X363 @ sh))) & (X362 != X363))) & (! [X364 : term,X365 : term] : ((((sub @ X365 @ sh)) != ((sub @ X364 @ sh))) | (X364 = X365)) | (shinj != $true)) & (pushprop_lem1_gthm = $true) & ((induction = $true) | ? [X366 : (term > $o),X367 : term] : (! [X368 : term] : (($true = ((X366 @ (lam @ X368)))) | (((X366 @ X368)) != $true)) & ! [X369 : term] : (($true = ((X366 @ X369))) | (((var @ X369)) != $true)) & ! [X370 : term,X371 : term] : (($true != ((X366 @ X371))) | ($true != ((X366 @ X370))) | ($true = ((X366 @ (ap @ X371 @ X370))))) & ($true != ((X366 @ X367))))) & (! [X372 : (term > $o),X373 : term] : (? [X374 : term] : ((((X372 @ (lam @ X374))) != $true) & ($true = ((X372 @ X374)))) | ? [X375 : term] : (($true != ((X372 @ X375))) & (((var @ X375)) = $true)) | ? [X376 : term,X377 : term] : (($true = ((X372 @ X377))) & ($true = ((X372 @ X376))) & (((X372 @ (ap @ X377 @ X376))) != $true)) | (((X372 @ X373)) = $true)) | (induction != $true)) & ((axidr = $true) | ? [X378 : subst] : (((comp @ X378 @ id)) != X378)) & (! [X379 : subst] : (((comp @ X379 @ id)) = X379) | (axidr != $true)) & ! [X380 : subst] : ? [X381 : d_subst] : (((d2subst @ X381)) = X380) & (pushprop = $true) & (! [X382 : (subst > term > subst > $o),X383 : term] : (? [X384 : (subst > term > term)] : (! [X385 : subst,X386 : term,X387 : subst] : (((X384 @ (comp @ X387 @ X385) @ (sub @ X386 @ X385))) = ((sub @ (X384 @ X387 @ X386) @ X385))) & ! [X388 : term] : (($true = ((X382 @ id @ (X384 @ id @ X388) @ id))) | ($true != ((X382 @ id @ X388 @ id)))) & ($true != ((X382 @ id @ (lam @ (X384 @ sh @ one)) @ id)))) | ? [X389 : term] : ((((X382 @ id @ X389 @ id)) != $true) & ($true = ((var @ (sub @ X389 @ id))))) | ($true = ((X382 @ id @ X383 @ id))) | ($true = ((sP3 @ X382))) | ? [X390 : subst,X391 : subst,X392 : term,X393 : subst] : (($true = ((X382 @ X390 @ X392 @ (comp @ X393 @ X391)))) & ($true != ((X382 @ (comp @ X390 @ X393) @ (sub @ X392 @ X393) @ X391)))) | ? [X394 : subst,X395 : subst,X396 : subst,X397 : term] : (($true != ((X382 @ X394 @ X397 @ (comp @ X396 @ X395)))) & ($true = ((X382 @ (comp @ X394 @ X396) @ (sub @ X397 @ X396) @ X395))))) | (hoasinduction != $true)) & ((hoasinduction = $true) | ? [X398 : (subst > term > subst > $o),X399 : term] : (! [X400 : (subst > term > term)] : (? [X401 : subst,X402 : term,X403 : subst] : (((X400 @ (comp @ X403 @ X401) @ (sub @ X402 @ X401))) != ((sub @ (X400 @ X403 @ X402) @ X401))) | ? [X404 : term] : (($true != ((X398 @ id @ (X400 @ id @ X404) @ id))) & ($true = ((X398 @ id @ X404 @ id)))) | ($true = ((X398 @ id @ (lam @ (X400 @ sh @ one)) @ id)))) & ! [X405 : term] : (($true = ((X398 @ id @ X405 @ id))) | ($true != ((var @ (sub @ X405 @ id))))) & ($true != ((X398 @ id @ X399 @ id))) & ($true != ((sP3 @ X398))) & ! [X406 : subst,X407 : subst,X408 : term,X409 : subst] : ((((X398 @ X406 @ X408 @ (comp @ X409 @ X407))) != $true) | ($true = ((X398 @ (comp @ X406 @ X409) @ (sub @ X408 @ X409) @ X407)))) & ! [X410 : subst,X411 : subst,X412 : subst,X413 : term] : (($true = ((X398 @ X410 @ X413 @ (comp @ X412 @ X411)))) | ($true != ((X398 @ (comp @ X410 @ X412) @ (sub @ X413 @ X412) @ X411)))))) & ! [X414 : d_term,X415 : d_term] : ((X414 = X415) | (((d2term @ X414)) != ((d2term @ X415)))) & (hoasinduction_gthm = $true) & ((hoasinduction_lem3a = $true) | ? [X416 : (subst > term > subst > $o),X417 : term] : ((((X416 @ id @ (lam @ X417) @ id)) != $true) & ! [X418 : (subst > term > term)] : (($true = ((X416 @ id @ (lam @ (X418 @ sh @ one)) @ id))) | ? [X419 : term] : (($true != ((X416 @ id @ (X418 @ id @ X419) @ id))) & ($true = ((X416 @ id @ X419 @ id)))) | ? [X420 : term,X421 : subst,X422 : subst] : (((sub @ (X418 @ X422 @ X420) @ X421)) != ((X418 @ (comp @ X422 @ X421) @ (sub @ X420 @ X421))))) & ! [X423 : term] : (($true = ((X416 @ id @ (sub @ X417 @ (push @ X423 @ id)) @ id))) | ($true != ((X416 @ id @ X423 @ id)))))) & (! [X424 : (subst > term > subst > $o),X425 : term] : (($true = ((X424 @ id @ (lam @ X425) @ id))) | ? [X426 : (subst > term > term)] : ((((X424 @ id @ (lam @ (X426 @ sh @ one)) @ id)) != $true) & ! [X427 : term] : (($true = ((X424 @ id @ (X426 @ id @ X427) @ id))) | ($true != ((X424 @ id @ X427 @ id)))) & ! [X428 : term,X429 : subst,X430 : subst] : (((X426 @ (comp @ X430 @ X429) @ (sub @ X428 @ X429))) = ((sub @ (X426 @ X430 @ X428) @ X429)))) | ? [X431 : term] : ((((X424 @ id @ (sub @ X425 @ (push @ X431 @ id)) @ id)) != $true) & ($true = ((X424 @ id @ X431 @ id))))) | (hoasinduction_lem3a != $true)) & (axclos = $true) & (hoasinduction_lem2_gthm = $true) & (! [X432 : term,X433 : (term > $o)] : (? [X434 : term] : ((((X433 @ X434)) != $true) & ($true = ((var @ X434)))) | ? [X435 : term,X436 : term] : ((((X433 @ X436)) = $true) & (((X433 @ (ap @ X436 @ X435))) != $true) & ($true = ((X433 @ X435)))) | (((X433 @ X432)) = $true) | ? [X437 : term] : (! [X438 : term] : (($true != ((X433 @ X438))) | (((X433 @ (sub @ X437 @ (push @ X438 @ id)))) = $true)) & ($true != ((X433 @ (lam @ X437)))))) | (induction2 != $true)) & ((induction2 = $true) | ? [X439 : term,X440 : (term > $o)] : (! [X441 : term] : (($true = ((X440 @ X441))) | ($true != ((var @ X441)))) & ! [X442 : term,X443 : term] : ((((X440 @ X443)) != $true) | (((X440 @ (ap @ X443 @ X442))) = $true) | ($true != ((X440 @ X442)))) & ($true != ((X440 @ X439))) & ! [X444 : term] : (? [X445 : term] : ((((X440 @ X445)) = $true) & ($true != ((X440 @ (sub @ X444 @ (push @ X445 @ id)))))) | ($true = ((X440 @ (lam @ X444))))))) & ((induction2lem_lthm = $true) | ($true != sP2)) & (($true = sP2) | (induction2lem_lthm != $true)) & (! [X446 : term,X447 : subst,X448 : (term > $o)] : ? [X449 : (term > $o)] : ! [X450 : term] : (((X448 @ (sub @ X450 @ (push @ X446 @ X447)))) = ((X449 @ X450))) | (pushprop_lem0_lthm != $true)) & ((pushprop_lem0_lthm = $true) | ? [X451 : term,X452 : subst,X453 : (term > $o)] : ! [X454 : (term > $o)] : ? [X455 : term] : (((X454 @ X455)) != ((X453 @ (sub @ X455 @ (push @ X451 @ X452)))))) & (hoasinduction_lem3b_gthm = $true) & (hoaslamnotvar_gthm = $true) & (! [X456 : term] : ? [X457 : (subst > term > term)] : ! [X458 : subst,X459 : term] : (((sub @ X456 @ (push @ X459 @ X458))) = ((X457 @ X458 @ X459))) | (hoasinduction_lem3v2_f != $true)) & ((hoasinduction_lem3v2_f = $true) | ? [X460 : term] : ! [X461 : (subst > term > term)] : ? [X462 : subst,X463 : term] : (((X461 @ X462 @ X463)) != ((sub @ X460 @ (push @ X463 @ X462))))) & ((hoasinduction_lthm_3 = $true) | (! [X464 : (term > $o),X465 : term] : (? [X466 : term] : ((((X464 @ X466)) != $true) & ($true = ((var @ X466)))) | (((X464 @ X465)) = $true) | ? [X467 : term] : (($true != ((X464 @ (lam @ X467)))) & ! [X468 : term] : (($true != ((X464 @ X468))) | (((X464 @ (sub @ X467 @ (push @ X468 @ id)))) = $true))) | ? [X469 : term,X470 : term] : (($true = ((X464 @ X469))) & ($true != ((X464 @ (ap @ X470 @ X469)))) & (((X464 @ X470)) = $true))) & ! [X471 : (subst > term > subst > $o)] : ? [X472 : (term > $o)] : ! [X473 : term] : (((X471 @ id @ X473 @ id)) = ((X472 @ X473))) & (sP1 != $true) & ! [X474 : term] : (((sub @ X474 @ id)) = X474) & ! [X475 : term,X476 : (subst > term > subst > $o),X477 : (term > $o)] : (? [X478 : term] : (((X477 @ X478)) != ((X476 @ id @ X478 @ id))) | ? [X479 : (subst > term > term)] : ((((X476 @ id @ (lam @ (X479 @ sh @ one)) @ id)) != $true) & ! [X480 : subst,X481 : subst,X482 : term] : (((sub @ (X479 @ X481 @ X482) @ X480)) = ((X479 @ (comp @ X481 @ X480) @ (sub @ X482 @ X480)))) & ! [X483 : term] : (($true != ((X476 @ id @ X483 @ id))) | ($true = ((X476 @ id @ (X479 @ id @ X483) @ id))))) | ($true = ((X477 @ (lam @ X475)))) | ? [X484 : term] : ((((X477 @ X484)) = $true) & ($true != ((X477 @ (sub @ X475 @ (push @ X484 @ id))))))))) & (? [X485 : (term > $o),X486 : term] : (! [X487 : term] : ((((X485 @ X487)) = $true) | (((var @ X487)) != $true)) & ($true != ((X485 @ X486))) & ! [X488 : term] : ((((X485 @ (lam @ X488))) = $true) | ? [X489 : term] : (($true = ((X485 @ X489))) & (((X485 @ (sub @ X488 @ (push @ X489 @ id)))) != $true))) & ! [X490 : term,X491 : term] : (($true != ((X485 @ X490))) | (((X485 @ (ap @ X491 @ X490))) = $true) | ($true != ((X485 @ X491))))) | ? [X492 : (subst > term > subst > $o)] : ! [X493 : (term > $o)] : ? [X494 : term] : (((X493 @ X494)) != ((X492 @ id @ X494 @ id))) | (sP1 = $true) | ? [X495 : term] : (((sub @ X495 @ id)) != X495) | ? [X496 : term,X497 : (subst > term > subst > $o),X498 : (term > $o)] : (! [X499 : term] : (((X498 @ X499)) = ((X497 @ id @ X499 @ id))) & ! [X500 : (subst > term > term)] : (($true = ((X497 @ id @ (lam @ (X500 @ sh @ one)) @ id))) | ? [X501 : subst,X502 : subst,X503 : term] : (((X500 @ (comp @ X502 @ X501) @ (sub @ X503 @ X501))) != ((sub @ (X500 @ X502 @ X503) @ X501))) | ? [X504 : term] : ((((X497 @ id @ X504 @ id)) = $true) & ($true != ((X497 @ id @ (X500 @ id @ X504) @ id))))) & (((X498 @ (lam @ X496))) != $true) & ! [X505 : term] : (($true != ((X498 @ X505))) | ($true = ((X498 @ (sub @ X496 @ (push @ X505 @ id))))))) | (hoasinduction_lthm_3 != $true)) & (((d2term @ d_one)) = ((hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one)))) & ((pushprop_lem1v2_lthm = $true) | (? [X506 : subst,X507 : (term > $o),X508 : term,X509 : (term > $o)] : (($true = ((X507 @ X508))) & ! [X510 : term] : (((X509 @ X510)) = ((X507 @ (sub @ X510 @ (push @ X508 @ X506))))) & ($true != ((X509 @ one)))) & ! [X511 : subst,X512 : term] : (((sub @ one @ (push @ X512 @ X511))) = X512))) & (! [X513 : subst,X514 : (term > $o),X515 : term,X516 : (term > $o)] : ((((X514 @ X515)) != $true) | ? [X517 : term] : (((X516 @ X517)) != ((X514 @ (sub @ X517 @ (push @ X515 @ X513))))) | (((X516 @ one)) = $true)) | ? [X518 : subst,X519 : term] : (((sub @ one @ (push @ X519 @ X518))) != X519) | (pushprop_lem1v2_lthm != $true)) & ! [X520 : d_subst] : (d_id = X520) & (! [X521 : term,X522 : term,X523 : term,X524 : term] : ((((ap @ (sub @ X521 @ id) @ X522)) != ((ap @ (sub @ X524 @ id) @ X523))) | (X521 = X524)) | ? [X525 : term,X526 : term,X527 : term,X528 : term] : ((((ap @ X527 @ X525)) = ((ap @ X526 @ X528))) & (X526 != X527)) | ? [X529 : term] : (((sub @ X529 @ id)) != X529) | (hoasapinj1_lthm != $true)) & ((hoasapinj1_lthm = $true) | (? [X530 : term,X531 : term,X532 : term,X533 : term] : ((((ap @ (sub @ X530 @ id) @ X531)) = ((ap @ (sub @ X533 @ id) @ X532))) & (X530 != X533)) & ! [X534 : term,X535 : term,X536 : term,X537 : term] : ((((ap @ X536 @ X534)) != ((ap @ X535 @ X537))) | (X535 = X536)) & ! [X538 : term] : (((sub @ X538 @ id)) = X538))) & (((d2term @ d_one)) = one) & (apnotvar = $true) & (axabs = $true) & ((pushprop_lem1v2 = $true) | ? [X539 : subst,X540 : (term > $o),X541 : term,X542 : (term > $o)] : ((((X540 @ one)) != $true) & ! [X543 : term] : (((X540 @ X543)) = ((X542 @ (sub @ X543 @ (push @ X541 @ X539))))) & ($true = ((X542 @ X541))))) & (! [X544 : subst,X545 : (term > $o),X546 : term,X547 : (term > $o)] : (($true = ((X545 @ one))) | ? [X548 : term] : (((X547 @ (sub @ X548 @ (push @ X546 @ X544)))) != ((X545 @ X548))) | ($true != ((X547 @ X546)))) | (pushprop_lem1v2 != $true)) & (! [X549 : term,X550 : term,X551 : term,X552 : term] : ((((ap @ X551 @ X549)) != ((ap @ X550 @ X552))) | (X549 = X552)) | (apinj2 != $true)) & ((apinj2 = $true) | ? [X553 : term,X554 : term,X555 : term,X556 : term] : ((((ap @ X555 @ X553)) = ((ap @ X554 @ X556))) & (X553 != X556))) & (hoasinduction_lem1v2_gthm = $true) & (! [X557 : term,X558 : term] : ((X557 = X558) | (((lam @ X558)) != ((lam @ X557)))) | (laminj != $true)) & ((laminj = $true) | ? [X559 : term,X560 : term] : ((X559 != X560) & (((lam @ X559)) = ((lam @ X560))))) & (pushprop_lem2v2_gthm = $true) & (ulamvarind = $true) & ((hoaslamnotap = $true) | ? [X561 : (subst > term > term),X562 : term,X563 : term] : ((((ap @ (sub @ X563 @ id) @ X562)) = ((lam @ (X561 @ sh @ one)))) & ! [X564 : subst,X565 : subst,X566 : term] : (((sub @ (X561 @ X565 @ X566) @ X564)) = ((X561 @ (comp @ X565 @ X564) @ (sub @ X566 @ X564)))))) & (! [X567 : (subst > term > term),X568 : term,X569 : term] : ((((ap @ (sub @ X569 @ id) @ X568)) != ((lam @ (X567 @ sh @ one)))) | ? [X570 : subst,X571 : subst,X572 : term] : (((X567 @ (comp @ X571 @ X570) @ (sub @ X572 @ X570))) != ((sub @ (X567 @ X571 @ X572) @ X570)))) | (hoaslamnotap != $true)) & (! [X573 : term] : ? [X574 : (subst > term > term)] : ! [X575 : subst,X576 : term] : (((sub @ X573 @ (push @ X576 @ X575))) = ((X574 @ X575 @ X576))) | (hoasinduction_lem3v2_f_lthm != $true)) & ((hoasinduction_lem3v2_f_lthm = $true) | ? [X577 : term] : ! [X578 : (subst > term > term)] : ? [X579 : subst,X580 : term] : (((sub @ X577 @ (push @ X580 @ X579))) != ((X578 @ X579 @ X580)))) & (hoaslamnotvar_lthm = $true) & ((hoasinduction_lem3b_lthm = $true) | ? [X581 : term] : ! [X582 : (subst > term > term)] : (((X582 @ sh @ one)) != ((sub @ X581 @ (push @ one @ sh))))) & (! [X583 : term] : ? [X584 : (subst > term > term)] : (((X584 @ sh @ one)) = ((sub @ X583 @ (push @ one @ sh)))) | (hoasinduction_lem3b_lthm != $true)) & (! [X585 : (subst > term > subst > $o),X586 : term] : (($true = ((X585 @ id @ (lam @ (sub @ X586 @ (push @ one @ sh))) @ id))) | ? [X587 : term] : (($true != ((X585 @ id @ (sub @ X586 @ (push @ X587 @ id)) @ id))) & (((X585 @ id @ X587 @ id)) = $true)) | ? [X588 : term,X589 : (subst > term > term)] : ((((X585 @ id @ (lam @ (X589 @ sh @ one)) @ id)) != $true) & ! [X590 : subst,X591 : term,X592 : subst] : (((sub @ (sub @ X588 @ (push @ X591 @ X590)) @ X592)) = ((sub @ (X589 @ X590 @ X591) @ X592))) & ! [X593 : subst,X594 : term,X595 : subst] : (((X589 @ (comp @ X593 @ X595) @ (sub @ X594 @ X595))) = ((sub @ X588 @ (push @ (sub @ X594 @ X595) @ (comp @ X593 @ X595))))) & ! [X596 : term] : (($true != ((X585 @ id @ X596 @ id))) | ($true = ((X585 @ id @ (X589 @ id @ X596) @ id)))))) | (hoasinduction_lem3aaa != $true)) & ((hoasinduction_lem3aaa = $true) | ? [X597 : (subst > term > subst > $o),X598 : term] : (($true != ((X597 @ id @ (lam @ (sub @ X598 @ (push @ one @ sh))) @ id))) & ! [X599 : term] : (($true = ((X597 @ id @ (sub @ X598 @ (push @ X599 @ id)) @ id))) | (((X597 @ id @ X599 @ id)) != $true)) & ! [X600 : term,X601 : (subst > term > term)] : ((((X597 @ id @ (lam @ (X601 @ sh @ one)) @ id)) = $true) | ? [X602 : subst,X603 : term,X604 : subst] : (((sub @ (sub @ X600 @ (push @ X603 @ X602)) @ X604)) != ((sub @ (X601 @ X602 @ X603) @ X604))) | ? [X605 : subst,X606 : term,X607 : subst] : (((X601 @ (comp @ X605 @ X607) @ (sub @ X606 @ X607))) != ((sub @ X600 @ (push @ (sub @ X606 @ X607) @ (comp @ X605 @ X607))))) | ? [X608 : term] : (($true = ((X597 @ id @ X608 @ id))) & (((X597 @ id @ (X601 @ id @ X608) @ id)) != $true))))) & ((axshiftcons = $true) | ? [X609 : term,X610 : subst] : (((comp @ sh @ (push @ X609 @ X610))) != X610)) & (! [X611 : term,X612 : subst] : (((comp @ sh @ (push @ X611 @ X612))) = X612) | (axshiftcons != $true)) & (ulamvar1 != $true) & ((substmonoid = $true) | ? [X613 : subst] : (((comp @ X613 @ id)) != X613) | ? [X614 : subst] : (((comp @ id @ X614)) != X614)) & ((! [X615 : subst] : (((comp @ X615 @ id)) = X615) & ! [X616 : subst] : (((comp @ id @ X616)) = X616)) | (substmonoid != $true)) & (hoasapinj2_gthm = $true) & (! [X617 : (term > $o),X618 : term,X619 : (subst > term > subst > $o)] : (($true = ((X617 @ (lam @ X618)))) | ? [X620 : (subst > term > term)] : (! [X621 : subst,X622 : term,X623 : subst] : (((sub @ (X620 @ X623 @ X622) @ X621)) = ((X620 @ (comp @ X623 @ X621) @ (sub @ X622 @ X621)))) & (((X619 @ id @ (lam @ (X620 @ sh @ one)) @ id)) != $true) & ! [X624 : term] : ((((X619 @ id @ (X620 @ id @ X624) @ id)) = $true) | (((X619 @ id @ X624 @ id)) != $true))) | ? [X625 : term] : (($true = ((X617 @ X625))) & ($true != ((X617 @ (sub @ X618 @ (push @ X625 @ id)))))) | ? [X626 : term] : (((X617 @ X626)) != ((X619 @ id @ X626 @ id)))) | ? [X627 : term] : (((sub @ X627 @ id)) != X627) | ? [X628 : term] : ! [X629 : (subst > term > term)] : ? [X630 : subst,X631 : term] : (((sub @ X628 @ (push @ X631 @ X630))) != ((X629 @ X630 @ X631))) | (hoasinduction_lem3v2a_lthm != $true)) & ((hoasinduction_lem3v2a_lthm = $true) | (? [X632 : (term > $o),X633 : term,X634 : (subst > term > subst > $o)] : (($true != ((X632 @ (lam @ X633)))) & ! [X635 : (subst > term > term)] : (? [X636 : subst,X637 : term,X638 : subst] : (((X635 @ (comp @ X638 @ X636) @ (sub @ X637 @ X636))) != ((sub @ (X635 @ X638 @ X637) @ X636))) | ($true = ((X634 @ id @ (lam @ (X635 @ sh @ one)) @ id))) | ? [X639 : term] : (($true != ((X634 @ id @ (X635 @ id @ X639) @ id))) & ($true = ((X634 @ id @ X639 @ id))))) & ! [X640 : term] : (($true != ((X632 @ X640))) | ($true = ((X632 @ (sub @ X633 @ (push @ X640 @ id)))))) & ! [X641 : term] : (((X632 @ X641)) = ((X634 @ id @ X641 @ id)))) & ! [X642 : term] : (((sub @ X642 @ id)) = X642) & ! [X643 : term] : ? [X644 : (subst > term > term)] : ! [X645 : subst,X646 : term] : (((sub @ X643 @ (push @ X646 @ X645))) = ((X644 @ X645 @ X646))))) & (! [X647 : (subst > term > subst > $o),X648 : term] : (($true = ((X647 @ id @ (lam @ (sub @ X648 @ (push @ one @ sh))) @ id))) | ? [X649 : (subst > term > term)] : (! [X650 : term,X651 : subst,X652 : subst] : (((sub @ (X649 @ X651 @ X650) @ X652)) = ((X649 @ (comp @ X651 @ X652) @ (sub @ X650 @ X652)))) & ($true != ((X647 @ id @ (lam @ (X649 @ sh @ one)) @ id))) & ! [X653 : term] : (($true != ((X647 @ id @ X653 @ id))) | ($true = ((X647 @ id @ (X649 @ id @ X653) @ id))))) | ? [X654 : term] : (($true = ((X647 @ id @ X654 @ id))) & ($true != ((X647 @ id @ (sub @ X648 @ (push @ X654 @ id)) @ id))))) | (hoasinduction_lem3aa_lthm != $true)) & ((hoasinduction_lem3aa_lthm = $true) | ? [X655 : (subst > term > subst > $o),X656 : term] : (($true != ((X655 @ id @ (lam @ (sub @ X656 @ (push @ one @ sh))) @ id))) & ! [X657 : (subst > term > term)] : (? [X658 : term,X659 : subst,X660 : subst] : (((X657 @ (comp @ X659 @ X660) @ (sub @ X658 @ X660))) != ((sub @ (X657 @ X659 @ X658) @ X660))) | ($true = ((X655 @ id @ (lam @ (X657 @ sh @ one)) @ id))) | ? [X661 : term] : (($true = ((X655 @ id @ X661 @ id))) & ($true != ((X655 @ id @ (X657 @ id @ X661) @ id))))) & ! [X662 : term] : (($true != ((X655 @ id @ X662 @ id))) | ($true = ((X655 @ id @ (sub @ X656 @ (push @ X662 @ id)) @ id)))))) & (! [X663 : term,X664 : term,X665 : term,X666 : term] : ((X664 = X665) | (((ap @ (sub @ X664 @ id) @ X666)) != ((ap @ (sub @ X665 @ id) @ X663)))) | (hoasapinj1 != $true)) & ((hoasapinj1 = $true) | ? [X667 : term,X668 : term,X669 : term,X670 : term] : ((X668 != X669) & (((ap @ (sub @ X669 @ id) @ X667)) = ((ap @ (sub @ X668 @ id) @ X670))))) & (hoasinduction_lem3a_gthm = $true) & (! [X671 : term,X672 : (term > $o),X673 : subst] : (? [X674 : term] : (! [X675 : term] : (($true != ((X672 @ X675))) | ($true = ((X672 @ (sub @ X674 @ (push @ X675 @ id)))))) & ($true != ((X672 @ (lam @ X674))))) | ? [X676 : term,X677 : term] : ((((X672 @ X676)) = $true) & ($true = ((X672 @ X677))) & ($true != ((X672 @ (ap @ X676 @ X677))))) | ? [X678 : term] : (($true != ((X672 @ (sub @ X678 @ X673)))) & ($true = ((var @ X678)))) | (((X672 @ (sub @ X671 @ X673))) = $true)) | (induction2lem != $true)) & ((induction2lem = $true) | ? [X679 : term,X680 : (term > $o),X681 : subst] : (! [X682 : term] : (? [X683 : term] : (($true = ((X680 @ X683))) & (((X680 @ (sub @ X682 @ (push @ X683 @ id)))) != $true)) | ($true = ((X680 @ (lam @ X682))))) & ! [X684 : term,X685 : term] : (($true != ((X680 @ X684))) | ($true != ((X680 @ X685))) | ($true = ((X680 @ (ap @ X684 @ X685))))) & ! [X686 : term] : (($true = ((X680 @ (sub @ X686 @ X681)))) | (((var @ X686)) != $true)) & ($true != ((X680 @ (sub @ X679 @ X681)))))) & (hoasinduction_lem2v2_gthm = $true) & (pushprop_lthm = $true) & (lamnotap != $true) & (((d2subst @ d_id)) = id) & (! [X687 : (term > $o),X688 : term,X689 : (term > $o),X690 : subst,X691 : term] : (($true = ((X687 @ (sub @ X691 @ (push @ X688 @ X690))))) | ($true != ((X689 @ X691)))) | (pushprop_lem1 != $true)) & ((pushprop_lem1 = $true) | ? [X692 : (term > $o),X693 : term,X694 : (term > $o),X695 : subst,X696 : term] : ((((X692 @ (sub @ X696 @ (push @ X693 @ X695)))) != $true) & ($true = ((X694 @ X696))))) & (((d2term @ d_one)) = ((ap @ (d2term @ d_one) @ (d2term @ d_one)))) & (axapp = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & ((hoasapinj2 = $true) | ? [X697 : term,X698 : term,X699 : term,X700 : term] : ((X698 != X700) & (((ap @ (sub @ X697 @ id) @ X700)) = ((ap @ (sub @ X699 @ id) @ X698))))) & (! [X701 : term,X702 : term,X703 : term,X704 : term] : ((X702 = X704) | (((ap @ (sub @ X703 @ id) @ X702)) != ((ap @ (sub @ X701 @ id) @ X704)))) | (hoasapinj2 != $true)) & (((d2subst @ d_id)) = sh) & (((d2term @ d_one)) = ((lam @ (d2term @ d_one)))) & (! [X705 : subst,X706 : term] : (((sub @ one @ (push @ X706 @ X705))) = X706) | (axvarcons != $true)) & ((axvarcons = $true) | ? [X707 : subst,X708 : term] : (((sub @ one @ (push @ X708 @ X707))) != X708)) & (! [X709 : term] : ? [X710 : (subst > term > term)] : (((sub @ X709 @ (push @ one @ sh))) = ((X710 @ sh @ one))) | (hoasinduction_lem3b != $true)) & ((hoasinduction_lem3b = $true) | ? [X711 : term] : ! [X712 : (subst > term > term)] : (((X712 @ sh @ one)) != ((sub @ X711 @ (push @ one @ sh))))) & (? [X713 : subst] : (((comp @ X713 @ id)) != X713) | ? [X714 : subst] : (((comp @ id @ X714)) != X714) | (! [X715 : subst] : (((comp @ X715 @ id)) = X715) & ! [X716 : subst] : (((comp @ id @ X716)) = X716)) | (substmonoid_lthm != $true)) & ((substmonoid_lthm = $true) | (! [X717 : subst] : (((comp @ X717 @ id)) = X717) & ! [X718 : subst] : (((comp @ id @ X718)) = X718) & (? [X719 : subst] : (((comp @ X719 @ id)) != X719) | ? [X720 : subst] : (((comp @ id @ X720)) != X720)))) & (axassoc = $true) & (lamnotvar = $true) & (pushprop_lem3v2_lthm = $true) & (termmset_gthm = $true) & ((hoasapinj2_lthm = $true) | (! [X721 : term,X722 : term,X723 : term,X724 : term] : ((X722 = X723) | (((ap @ X724 @ X723)) != ((ap @ X721 @ X722)))) & ? [X725 : term,X726 : term,X727 : term,X728 : term] : ((((ap @ (sub @ X725 @ id) @ X728)) = ((ap @ (sub @ X726 @ id) @ X727))) & (X727 != X728)))) & (? [X729 : term,X730 : term,X731 : term,X732 : term] : ((X730 != X731) & (((ap @ X729 @ X730)) = ((ap @ X732 @ X731)))) | ! [X733 : term,X734 : term,X735 : term,X736 : term] : ((((ap @ (sub @ X733 @ id) @ X736)) != ((ap @ (sub @ X734 @ id) @ X735))) | (X735 = X736)) | (hoasapinj2_lthm != $true)) & (hoasapnotvar = $true) & ! [X737 : d_subst,X738 : d_subst] : ((X737 = X738) | (((d2subst @ X738)) != ((d2subst @ X737)))) & (hoasinduction_lem3_gthm = $true) & (pushprop_lem3v2 = $true) & (! [X739 : (term > $o),X740 : term,X741 : (subst > term > subst > $o)] : (? [X742 : term] : (((X739 @ X742)) != ((X741 @ id @ X742 @ id))) | ? [X743 : subst,X744 : subst,X745 : subst,X746 : term] : (($true = ((X741 @ (comp @ X743 @ X745) @ (sub @ X746 @ X745) @ X744))) & (((X741 @ X743 @ X746 @ (comp @ X745 @ X744))) != $true)) | ? [X747 : subst,X748 : term,X749 : subst,X750 : subst] : (($true != ((X741 @ (comp @ X749 @ X750) @ (sub @ X748 @ X750) @ X747))) & (((X741 @ X749 @ X748 @ (comp @ X750 @ X747))) = $true)) | ($true = ((X739 @ (lam @ X740)))) | ? [X751 : term] : (($true = ((X739 @ X751))) & (((X739 @ (sub @ X740 @ (push @ X751 @ id)))) != $true)) | ? [X752 : (subst > term > term)] : (! [X753 : term] : ((((X741 @ id @ X753 @ id)) != $true) | (((X741 @ id @ (X752 @ id @ X753) @ id)) = $true)) & ($true != ((X741 @ id @ (lam @ (X752 @ sh @ one)) @ id))) & ! [X754 : term,X755 : subst,X756 : subst] : (((X752 @ (comp @ X756 @ X755) @ (sub @ X754 @ X755))) = ((sub @ (X752 @ X756 @ X754) @ X755))))) | (hoasinduction_lem3v2 != $true)) & ((hoasinduction_lem3v2 = $true) | ? [X757 : (term > $o),X758 : term,X759 : (subst > term > subst > $o)] : (! [X760 : term] : (((X759 @ id @ X760 @ id)) = ((X757 @ X760))) & ! [X761 : subst,X762 : subst,X763 : subst,X764 : term] : (($true != ((X759 @ (comp @ X761 @ X763) @ (sub @ X764 @ X763) @ X762))) | (((X759 @ X761 @ X764 @ (comp @ X763 @ X762))) = $true)) & ! [X765 : subst,X766 : term,X767 : subst,X768 : subst] : (($true = ((X759 @ (comp @ X767 @ X768) @ (sub @ X766 @ X768) @ X765))) | ($true != ((X759 @ X767 @ X766 @ (comp @ X768 @ X765))))) & ($true != ((X757 @ (lam @ X758)))) & ! [X769 : term] : (($true != ((X757 @ X769))) | (((X757 @ (sub @ X758 @ (push @ X769 @ id)))) = $true)) & ! [X770 : (subst > term > term)] : (? [X771 : term] : (($true = ((X759 @ id @ X771 @ id))) & (((X759 @ id @ (X770 @ id @ X771) @ id)) != $true)) | ($true = ((X759 @ id @ (lam @ (X770 @ sh @ one)) @ id))) | ? [X772 : term,X773 : subst,X774 : subst] : (((X770 @ (comp @ X774 @ X773) @ (sub @ X772 @ X773))) != ((sub @ (X770 @ X774 @ X772) @ X773)))))) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y1 @ Y2) = (Y0 @ id @ Y2 @ id)))))))) & (hoasinduction_lem3v2_gthm = $true) & (! [X775 : term,X776 : (subst > term > subst > $o)] : (? [X777 : (subst > term > term)] : (($true != ((X776 @ id @ (lam @ (X777 @ sh @ one)) @ id))) & ! [X778 : subst,X779 : term,X780 : subst] : (((sub @ (X777 @ X778 @ X779) @ X780)) = ((X777 @ (comp @ X778 @ X780) @ (sub @ X779 @ X780)))) & ! [X781 : term] : (($true != ((X776 @ id @ X781 @ id))) | (((X776 @ id @ (X777 @ id @ X781) @ id)) = $true))) | ? [X782 : term] : ((((X776 @ id @ X782 @ id)) = $true) & (((X776 @ id @ (sub @ X775 @ (push @ X782 @ id)) @ id)) != $true)) | (((X776 @ id @ (lam @ (sub @ X775 @ (push @ one @ sh))) @ id)) = $true)) | (hoasinduction_lem3aa != $true)) & ((hoasinduction_lem3aa = $true) | ? [X783 : term,X784 : (subst > term > subst > $o)] : (! [X785 : (subst > term > term)] : (($true = ((X784 @ id @ (lam @ (X785 @ sh @ one)) @ id))) | ? [X786 : subst,X787 : term,X788 : subst] : (((sub @ (X785 @ X786 @ X787) @ X788)) != ((X785 @ (comp @ X786 @ X788) @ (sub @ X787 @ X788)))) | ? [X789 : term] : (($true = ((X784 @ id @ X789 @ id))) & ($true != ((X784 @ id @ (X785 @ id @ X789) @ id))))) & ! [X790 : term] : (($true != ((X784 @ id @ X790 @ id))) | (((X784 @ id @ (sub @ X783 @ (push @ X790 @ id)) @ id)) = $true)) & ($true != ((X784 @ id @ (lam @ (sub @ X783 @ (push @ one @ sh))) @ id))))) & ! [X791 : d_term] : (d_one = X791) & (hoasinduction_lem1v2 = $true) & (! [X792 : (subst > term > subst > $o),X793 : term,X794 : (term > $o)] : (? [X795 : subst,X796 : subst,X797 : subst,X798 : term] : (($true != ((X792 @ X795 @ X798 @ (comp @ X796 @ X797)))) & ($true = ((X792 @ (comp @ X795 @ X796) @ (sub @ X798 @ X796) @ X797)))) | ? [X799 : subst,X800 : subst,X801 : term,X802 : subst] : (($true = ((X792 @ X800 @ X801 @ (comp @ X799 @ X802)))) & ($true != ((X792 @ (comp @ X800 @ X799) @ (sub @ X801 @ X799) @ X802)))) | ($true = ((X794 @ (lam @ X793)))) | ? [X803 : term] : (((X792 @ id @ X803 @ id)) != ((X794 @ X803))) | ? [X804 : (subst > term > term)] : (! [X805 : term] : (($true != ((X792 @ id @ X805 @ id))) | ($true = ((X792 @ id @ (X804 @ id @ X805) @ id)))) & ! [X806 : subst,X807 : term,X808 : subst] : (((X804 @ (comp @ X806 @ X808) @ (sub @ X807 @ X808))) = ((sub @ (X804 @ X806 @ X807) @ X808))) & (((X792 @ id @ (lam @ (X804 @ sh @ one)) @ id)) != $true)) | ? [X809 : term] : (($true != ((X794 @ (sub @ X793 @ (push @ X809 @ id))))) & ($true = ((X794 @ X809))))) | ? [X810 : term] : (((sub @ X810 @ id)) != X810) | (hoasinduction_lem3v2_lthm != $true)) & ((hoasinduction_lem3v2_lthm = $true) | (? [X811 : (subst > term > subst > $o),X812 : term,X813 : (term > $o)] : (! [X814 : subst,X815 : subst,X816 : subst,X817 : term] : (($true = ((X811 @ X814 @ X817 @ (comp @ X815 @ X816)))) | ($true != ((X811 @ (comp @ X814 @ X815) @ (sub @ X817 @ X815) @ X816)))) & ! [X818 : subst,X819 : subst,X820 : term,X821 : subst] : (($true != ((X811 @ X819 @ X820 @ (comp @ X818 @ X821)))) | ($true = ((X811 @ (comp @ X819 @ X818) @ (sub @ X820 @ X818) @ X821)))) & ($true != ((X813 @ (lam @ X812)))) & ! [X822 : term] : (((X811 @ id @ X822 @ id)) = ((X813 @ X822))) & ! [X823 : (subst > term > term)] : (? [X824 : term] : (($true = ((X811 @ id @ X824 @ id))) & ($true != ((X811 @ id @ (X823 @ id @ X824) @ id)))) | ? [X825 : subst,X826 : term,X827 : subst] : (((sub @ (X823 @ X825 @ X826) @ X827)) != ((X823 @ (comp @ X825 @ X827) @ (sub @ X826 @ X827)))) | (((X811 @ id @ (lam @ (X823 @ sh @ one)) @ id)) = $true)) & ! [X828 : term] : (($true = ((X813 @ (sub @ X812 @ (push @ X828 @ id))))) | ($true != ((X813 @ X828))))) & ! [X829 : term] : (((sub @ X829 @ id)) = X829))) & ((axidl = $true) | ? [X830 : subst] : (((comp @ id @ X830)) != X830)) & (! [X831 : subst] : (((comp @ id @ X831)) = X831) | (axidl != $true)) & (hoasapnotvar_lthm = $true) & (hoasinduction_lem2_lthm = $true) & (! [X832 : term,X833 : subst,X834 : (term > $o)] : ? [X835 : (term > $o)] : ! [X836 : term] : (((X835 @ X836)) = ((X834 @ (sub @ X836 @ (push @ X832 @ X833))))) | (pushprop_lem0 != $true)) & ((pushprop_lem0 = $true) | ? [X837 : term,X838 : subst,X839 : (term > $o)] : ! [X840 : (term > $o)] : ? [X841 : term] : (((X839 @ (sub @ X841 @ (push @ X837 @ X838)))) != ((X840 @ X841))))),
  inference(rectify,[],[f58])).
thf(f60,plain,(
  (pushprop_gthm = $true) & ((sK124 != ((sub @ sK124 @ id))) | (($true != ((sK126 @ id @ (lam @ (sub @ sK125 @ (push @ one @ sh))) @ id))) & ! [X3 : (subst > term > term)] : ((($true != ((sK126 @ id @ (X3 @ id @ (sK127 @ X3)) @ id))) & ($true = ((sK126 @ id @ (sK127 @ X3) @ id)))) | (((X3 @ (comp @ (sK130 @ X3) @ (sK128 @ X3)) @ (sub @ (sK129 @ X3) @ (sK128 @ X3)))) != ((sub @ (X3 @ (sK130 @ X3) @ (sK129 @ X3)) @ (sK128 @ X3)))) | ($true = ((sK126 @ id @ (lam @ (X3 @ sh @ one)) @ id)))) & ! [X8 : term] : ((((sK126 @ id @ X8 @ id)) != $true) | ($true = ((sK126 @ id @ (sub @ sK125 @ (push @ X8 @ id)) @ id))))) | ($true = sP9) | (hoasinduction_lem3_lthm != $true)) & ((hoasinduction_lem3_lthm = $true) | (! [X9 : term] : (((sub @ X9 @ id)) = X9) & ! [X10 : term,X11 : (subst > term > subst > $o)] : (($true = ((X11 @ id @ (lam @ (sub @ X10 @ (push @ one @ sh))) @ id))) | (! [X13 : term] : ((((X11 @ id @ (sK131 @ X11 @ id @ X13) @ id)) = $true) | (((X11 @ id @ X13 @ id)) != $true)) & ! [X14 : subst,X15 : term,X16 : subst] : (((sK131 @ X11 @ (comp @ X16 @ X14) @ (sub @ X15 @ X14))) = ((sub @ (sK131 @ X11 @ X16 @ X15) @ X14))) & (((X11 @ id @ (lam @ (sK131 @ X11 @ sh @ one)) @ id)) != $true)) | ((((X11 @ id @ (sK132 @ X11 @ X10) @ id)) = $true) & (((X11 @ id @ (sub @ X10 @ (push @ (sK132 @ X11 @ X10) @ id)) @ id)) != $true))) & ($true != sP9))) & (! [X18 : (subst > term > subst > $o)] : ! [X20 : term] : (((sK133 @ X18 @ X20)) = ((X18 @ id @ X20 @ id))) | (hoasinduction_lem0 != $true)) & ((hoasinduction_lem0 = $true) | ! [X22 : (term > $o)] : (((sK134 @ id @ (sK135 @ X22) @ id)) != ((X22 @ (sK135 @ X22))))) & ((hoaslaminj_lthm = $true) | ((! [X28 : subst,X29 : subst,X30 : term] : (((sK138 @ (comp @ X28 @ X29) @ (sub @ X30 @ X29))) = ((sub @ (sK138 @ X28 @ X30) @ X29))) & (((sK138 @ sK136 @ sK139)) != ((sK137 @ sK136 @ sK139))) & (((lam @ (sK138 @ sh @ one))) = ((lam @ (sK137 @ sh @ one)))) & ! [X31 : subst,X32 : term,X33 : subst] : (((sK137 @ (comp @ X31 @ X33) @ (sub @ X32 @ X33))) = ((sub @ (sK137 @ X31 @ X32) @ X33)))) & ! [X34 : term,X35 : term] : ((((lam @ X34)) != ((lam @ X35))) | (X34 = X35)) & ! [X36 : subst,X37 : term] : (((comp @ sh @ (push @ X37 @ X36))) = X36) & ! [X38 : term,X39 : subst] : (((sub @ one @ (push @ X38 @ X39))) = X38))) & (! [X40 : subst,X41 : (subst > term > term),X42 : (subst > term > term),X43 : term] : ((((X42 @ (comp @ (sK140 @ X42) @ (sK141 @ X42)) @ (sub @ (sK142 @ X42) @ (sK141 @ X42)))) != ((sub @ (X42 @ (sK140 @ X42) @ (sK142 @ X42)) @ (sK141 @ X42)))) | (((X41 @ X40 @ X43)) = ((X42 @ X40 @ X43))) | (((lam @ (X42 @ sh @ one))) != ((lam @ (X41 @ sh @ one)))) | (((X41 @ (comp @ (sK143 @ X41) @ (sK145 @ X41)) @ (sub @ (sK144 @ X41) @ (sK145 @ X41)))) != ((sub @ (X41 @ (sK143 @ X41) @ (sK144 @ X41)) @ (sK145 @ X41))))) | ((((lam @ sK147)) = ((lam @ sK146))) & (sK147 != sK146)) | (((comp @ sh @ (push @ sK149 @ sK148))) != sK148) | (sK150 != ((sub @ one @ (push @ sK150 @ sK151)))) | (hoaslaminj_lthm != $true)) & (((d2term @ d_one)) = ((sub @ (d2term @ d_one) @ (d2subst @ d_id)))) & (hoaslamnotap_gthm = $true) & (pushprop_lem2v2_lthm = $true) & (! [X56 : subst,X57 : (subst > term > term),X58 : term,X59 : (subst > term > term)] : ((((X59 @ (comp @ (sK152 @ X59) @ (sK154 @ X59)) @ (sub @ (sK153 @ X59) @ (sK154 @ X59)))) != ((sub @ (X59 @ (sK152 @ X59) @ (sK153 @ X59)) @ (sK154 @ X59)))) | (((sub @ (X57 @ (sK157 @ X57) @ (sK155 @ X57)) @ (sK156 @ X57))) != ((X57 @ (comp @ (sK157 @ X57) @ (sK156 @ X57)) @ (sub @ (sK155 @ X57) @ (sK156 @ X57))))) | (((X59 @ X56 @ X58)) = ((X57 @ X56 @ X58))) | (((lam @ (X57 @ sh @ one))) != ((lam @ (X59 @ sh @ one))))) | (hoaslaminj != $true)) & ((hoaslaminj = $true) | (! [X70 : subst,X71 : term,X72 : subst] : (((sub @ (sK161 @ X70 @ X71) @ X72)) = ((sK161 @ (comp @ X70 @ X72) @ (sub @ X71 @ X72)))) & ! [X73 : term,X74 : subst,X75 : subst] : (((sK159 @ (comp @ X75 @ X74) @ (sub @ X73 @ X74))) = ((sub @ (sK159 @ X75 @ X73) @ X74))) & (((sK159 @ sK158 @ sK160)) != ((sK161 @ sK158 @ sK160))) & (((lam @ (sK161 @ sh @ one))) = ((lam @ (sK159 @ sh @ one)))))) & ! [X76 : term] : (((d2term @ (sK162 @ X76))) = X76) & (pushprop_p_and_p_prime = (^[Y0 : term]: ((^[Y1 : subst]: ((^[Y2 : term > $o]: ((^[Y3 : term > $o]: (!! @ term @ (^[Y4 : term]: ((Y2 @ (sub @ Y4 @ (push @ Y0 @ Y1))) = (Y3 @ Y4)))))))))))) & ((hoasinduction_no_psi_cond = $true) | (($true != ((sK163 @ id @ sK164 @ id))) & ! [X80 : term,X81 : term] : ((((sK163 @ id @ X80 @ id)) != $true) | ($true != ((sK163 @ id @ X81 @ id))) | (((sK163 @ id @ (ap @ (sub @ X81 @ id) @ X80) @ id)) = $true)) & ! [X82 : (subst > term > term)] : ((($true = ((sK163 @ id @ (sK165 @ X82) @ id))) & (((sK163 @ id @ (X82 @ id @ (sK165 @ X82)) @ id)) != $true)) | (((X82 @ (comp @ (sK166 @ X82) @ (sK167 @ X82)) @ (sub @ (sK168 @ X82) @ (sK167 @ X82)))) != ((sub @ (X82 @ (sK166 @ X82) @ (sK168 @ X82)) @ (sK167 @ X82)))) | (((sK163 @ id @ (lam @ (X82 @ sh @ one)) @ id)) = $true)))) & (! [X87 : (subst > term > subst > $o),X88 : term] : (($true = ((X87 @ id @ X88 @ id))) | ((((X87 @ id @ (sK169 @ X87) @ id)) = $true) & ($true = ((X87 @ id @ (sK170 @ X87) @ id))) & ($true != ((X87 @ id @ (ap @ (sub @ (sK170 @ X87) @ id) @ (sK169 @ X87)) @ id)))) | (! [X92 : term] : (($true != ((X87 @ id @ X92 @ id))) | ($true = ((X87 @ id @ (sK171 @ X87 @ id @ X92) @ id)))) & ! [X93 : subst,X94 : subst,X95 : term] : (((sub @ (sK171 @ X87 @ X93 @ X95) @ X94)) = ((sK171 @ X87 @ (comp @ X93 @ X94) @ (sub @ X95 @ X94)))) & (((X87 @ id @ (lam @ (sK171 @ X87 @ sh @ one)) @ id)) != $true))) | (hoasinduction_no_psi_cond != $true)) & (hoasapinj1_gthm = $true) & (hoaslamnotvar = $true) & ((axscons = $true) | (sK172 != ((push @ (sub @ one @ sK172) @ (comp @ sh @ sK172))))) & (! [X97 : subst] : (((push @ (sub @ one @ X97) @ (comp @ sh @ X97))) = X97) | (axscons != $true)) & (hoasinduction_lem1_lthm = $true) & (hoaslamnotap_lthm = $true) & (! [X98 : term] : (((sub @ X98 @ id)) = X98) | (termmset != $true)) & ((termmset = $true) | (((sub @ sK173 @ id)) != sK173)) & (((hoasvar @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id))) != $true) & (induction2lem_gthm = $true) & ((termmset_lthm = $true) | (! [X100 : term] : (((sub @ X100 @ id)) = X100) & (((sub @ sK174 @ id)) != sK174))) & ((sK175 != ((sub @ sK175 @ id))) | ! [X103 : term] : (((sub @ X103 @ id)) = X103) | (termmset_lthm != $true)) & ((hoasinduction_lem2 = $true) | (! [X107 : term,X108 : term] : ((((sK176 @ id @ (ap @ (sub @ X107 @ id) @ X108) @ id)) = $true) | ($true != ((sK176 @ id @ X108 @ id))) | ($true != ((sK176 @ id @ X107 @ id)))) & (((sK176 @ id @ sK177 @ id)) = $true) & ! [X109 : subst,X110 : subst,X111 : term,X112 : subst] : ((((sK176 @ (comp @ X110 @ X109) @ (sub @ X111 @ X109) @ X112)) = $true) | (((sK176 @ X110 @ X111 @ (comp @ X109 @ X112))) != $true)) & ! [X113 : subst,X114 : subst,X115 : term,X116 : subst] : (($true = ((sK176 @ X116 @ X115 @ (comp @ X113 @ X114)))) | (((sK176 @ (comp @ X116 @ X113) @ (sub @ X115 @ X113) @ X114)) != $true)) & ($true != ((sK176 @ id @ (ap @ sK178 @ sK177) @ id))) & (((sK176 @ id @ sK178 @ id)) = $true))) & (! [X117 : (subst > term > subst > $o),X118 : term,X119 : term] : ((($true != ((X117 @ id @ (ap @ (sub @ (sK179 @ X117) @ id) @ (sK180 @ X117)) @ id))) & (((X117 @ id @ (sK180 @ X117) @ id)) = $true) & ($true = ((X117 @ id @ (sK179 @ X117) @ id)))) | ($true != ((X117 @ id @ X118 @ id))) | (($true != ((X117 @ (comp @ (sK182 @ X117) @ (sK181 @ X117)) @ (sub @ (sK183 @ X117) @ (sK181 @ X117)) @ (sK184 @ X117)))) & ($true = ((X117 @ (sK182 @ X117) @ (sK183 @ X117) @ (comp @ (sK181 @ X117) @ (sK184 @ X117)))))) | ((((X117 @ (sK188 @ X117) @ (sK187 @ X117) @ (comp @ (sK185 @ X117) @ (sK186 @ X117)))) != $true) & ($true = ((X117 @ (comp @ (sK188 @ X117) @ (sK185 @ X117)) @ (sub @ (sK187 @ X117) @ (sK185 @ X117)) @ (sK186 @ X117))))) | ($true = ((X117 @ id @ (ap @ X119 @ X118) @ id))) | (((X117 @ id @ X119 @ id)) != $true)) | (hoasinduction_lem2 != $true)) & ((hoasinduction_lthm = $true) | (! [X130 : term,X131 : (term > $o)] : ((((X131 @ X130)) = $true) | ((((X131 @ (ap @ (sK189 @ X131) @ (sK190 @ X131)))) != $true) & ($true = ((X131 @ (sK190 @ X131)))) & ($true = ((X131 @ (sK189 @ X131))))) | (($true != ((X131 @ (sK191 @ X131)))) & ($true = ((var @ (sK191 @ X131))))) | (! [X136 : term] : (($true = ((X131 @ (sub @ (sK192 @ X131) @ (push @ X136 @ id))))) | (((X131 @ X136)) != $true)) & ($true != ((X131 @ (lam @ (sK192 @ X131))))))) & ! [X137 : term,X138 : term,X139 : (subst > term > subst > $o)] : ((($true = ((X139 @ (comp @ (sK195 @ X139) @ (sK193 @ X139)) @ (sub @ (sK194 @ X139) @ (sK193 @ X139)) @ (sK196 @ X139)))) & (((X139 @ (sK195 @ X139) @ (sK194 @ X139) @ (comp @ (sK193 @ X139) @ (sK196 @ X139)))) != $true)) | (($true = ((X139 @ id @ (sK197 @ X139) @ id))) & (((X139 @ id @ (sK198 @ X139) @ id)) = $true) & ($true != ((X139 @ id @ (ap @ (sub @ (sK198 @ X139) @ id) @ (sK197 @ X139)) @ id)))) | (($true != ((X139 @ (comp @ (sK200 @ X139) @ (sK199 @ X139)) @ (sub @ (sK201 @ X139) @ (sK199 @ X139)) @ (sK202 @ X139)))) & (((X139 @ (sK200 @ X139) @ (sK201 @ X139) @ (comp @ (sK199 @ X139) @ (sK202 @ X139)))) = $true)) | ($true != ((X139 @ id @ X138 @ id))) | (((X139 @ id @ (ap @ X138 @ X137) @ id)) = $true) | ($true != ((X139 @ id @ X137 @ id)))) & (sP8 != $true) & ($true != sP7))) & ((($true != ((sK204 @ sK203))) & ! [X152 : term,X153 : term] : (($true = ((sK204 @ (ap @ X152 @ X153)))) | ($true != ((sK204 @ X153))) | ($true != ((sK204 @ X152)))) & ! [X154 : term] : ((((sK204 @ X154)) = $true) | ($true != ((var @ X154)))) & ! [X155 : term] : (((((sK204 @ (sub @ X155 @ (push @ (sK205 @ X155) @ id)))) != $true) & ($true = ((sK204 @ (sK205 @ X155))))) | ($true = ((sK204 @ (lam @ X155)))))) | (! [X160 : subst,X161 : term,X162 : subst,X163 : subst] : (($true != ((sK208 @ (comp @ X162 @ X160) @ (sub @ X161 @ X160) @ X163))) | (((sK208 @ X162 @ X161 @ (comp @ X160 @ X163))) = $true)) & ! [X164 : term,X165 : term] : (($true != ((sK208 @ id @ X164 @ id))) | ($true != ((sK208 @ id @ X165 @ id))) | ($true = ((sK208 @ id @ (ap @ (sub @ X165 @ id) @ X164) @ id)))) & ! [X166 : subst,X167 : subst,X168 : term,X169 : subst] : ((((sK208 @ (comp @ X167 @ X166) @ (sub @ X168 @ X166) @ X169)) = $true) | (((sK208 @ X167 @ X168 @ (comp @ X166 @ X169))) != $true)) & (((sK208 @ id @ sK207 @ id)) = $true) & ($true != ((sK208 @ id @ (ap @ sK207 @ sK206) @ id))) & (((sK208 @ id @ sK206 @ id)) = $true)) | (sP8 = $true) | ($true = sP7) | (hoasinduction_lthm != $true)) & (pushprop_lem1v2_gthm = $true) & (((d2subst @ d_id)) = ((comp @ (d2subst @ d_id) @ (d2subst @ d_id)))) & (hoasinduction_lem1_gthm = $true) & (! [X170 : term,X171 : term,X172 : term,X173 : term] : ((X170 = X173) | (((ap @ X170 @ X171)) != ((ap @ X173 @ X172)))) | (apinj1 != $true)) & ((apinj1 = $true) | ((sK212 != sK209) & (((ap @ sK209 @ sK210)) = ((ap @ sK212 @ sK211))))) & (hoasapnotvar_gthm = $true) & (axmap = $true) & (($true = sP5) | (induction2_lthm != $true)) & ((induction2_lthm = $true) | ($true != sP5)) & (substmonoid_gthm = $true) & (axvarshift = $true) & (pushprop_lem0_gthm = $true) & (! [X178 : term,X179 : (term > $o),X180 : term,X181 : (subst > term > subst > $o)] : (($true = ((X179 @ (ap @ X178 @ X180)))) | ($true != ((X179 @ X178))) | (($true = ((X181 @ id @ (sK214 @ X181) @ id))) & (((X181 @ id @ (sK213 @ X181) @ id)) = $true) & (((X181 @ id @ (ap @ (sub @ (sK214 @ X181) @ id) @ (sK213 @ X181)) @ id)) != $true)) | ((((X181 @ (comp @ (sK218 @ X181) @ (sK217 @ X181)) @ (sub @ (sK215 @ X181) @ (sK217 @ X181)) @ (sK216 @ X181))) = $true) & (((X181 @ (sK218 @ X181) @ (sK215 @ X181) @ (comp @ (sK217 @ X181) @ (sK216 @ X181)))) != $true)) | ($true != ((X179 @ X180))) | ((((X181 @ (comp @ (sK221 @ X181) @ (sK219 @ X181)) @ (sub @ (sK220 @ X181) @ (sK219 @ X181)) @ (sK222 @ X181))) != $true) & ($true = ((X181 @ (sK221 @ X181) @ (sK220 @ X181) @ (comp @ (sK219 @ X181) @ (sK222 @ X181)))))) | (((X181 @ id @ (sK223 @ X181 @ X179) @ id)) != ((X179 @ (sK223 @ X181 @ X179))))) | (hoasinduction_lem2v2 != $true)) & ((hoasinduction_lem2v2 = $true) | (($true != ((sK225 @ (ap @ sK224 @ sK226)))) & (((sK225 @ sK224)) = $true) & ! [X197 : term,X198 : term] : ((((sK227 @ id @ X198 @ id)) != $true) | (((sK227 @ id @ X197 @ id)) != $true) | ($true = ((sK227 @ id @ (ap @ (sub @ X198 @ id) @ X197) @ id)))) & ! [X199 : term,X200 : subst,X201 : subst,X202 : subst] : ((((sK227 @ (comp @ X202 @ X201) @ (sub @ X199 @ X201) @ X200)) != $true) | ($true = ((sK227 @ X202 @ X199 @ (comp @ X201 @ X200))))) & ($true = ((sK225 @ sK226))) & ! [X203 : subst,X204 : term,X205 : subst,X206 : subst] : (($true = ((sK227 @ (comp @ X205 @ X203) @ (sub @ X204 @ X203) @ X206))) | ($true != ((sK227 @ X205 @ X204 @ (comp @ X203 @ X206))))) & ! [X207 : term] : (((sK225 @ X207)) = ((sK227 @ id @ X207 @ id))))) & (((var @ (d2term @ d_one))) != $true) & (! [X208 : term] : (((sub @ X208 @ id)) = X208) | (axvarid != $true)) & ((axvarid = $true) | (((sub @ sK228 @ id)) != sK228)) & ((((sub @ sK229 @ id)) != sK229) | ! [X211 : term,X212 : (subst > term > subst > $o)] : (((((X212 @ id @ (sK230 @ X212 @ X211) @ id)) = $true) & ($true != ((X212 @ id @ (sub @ X211 @ (push @ (sK230 @ X212 @ X211) @ id)) @ id)))) | (($true != ((X212 @ id @ (lam @ (sK231 @ X212 @ sh @ one)) @ id))) & ! [X215 : subst,X216 : subst,X217 : term] : (((sub @ (sK231 @ X212 @ X216 @ X217) @ X215)) = ((sK231 @ X212 @ (comp @ X216 @ X215) @ (sub @ X217 @ X215)))) & ! [X218 : term] : ((((X212 @ id @ (sK231 @ X212 @ id @ X218) @ id)) = $true) | ($true != ((X212 @ id @ X218 @ id))))) | ($true = ((X212 @ id @ (lam @ X211) @ id)))) | (! [X221 : (subst > term > term)] : ((($true != ((sK233 @ id @ (X221 @ id @ (sK234 @ X221)) @ id))) & ($true = ((sK233 @ id @ (sK234 @ X221) @ id)))) | (((sK233 @ id @ (lam @ (X221 @ sh @ one)) @ id)) = $true) | (((sub @ (X221 @ (sK235 @ X221) @ (sK236 @ X221)) @ (sK237 @ X221))) != ((X221 @ (comp @ (sK235 @ X221) @ (sK237 @ X221)) @ (sub @ (sK236 @ X221) @ (sK237 @ X221)))))) & (((sK233 @ id @ (lam @ (sub @ sK232 @ (push @ one @ sh))) @ id)) != $true) & ! [X226 : term] : (($true != ((sK233 @ id @ X226 @ id))) | (((sK233 @ id @ (sub @ sK232 @ (push @ X226 @ id)) @ id)) = $true))) | (hoasinduction_lem3a_lthm != $true)) & ((hoasinduction_lem3a_lthm = $true) | (! [X227 : term] : (((sub @ X227 @ id)) = X227) & (! [X230 : term] : (($true != ((sK239 @ id @ X230 @ id))) | (((sK239 @ id @ (sub @ sK238 @ (push @ X230 @ id)) @ id)) = $true)) & ! [X231 : (subst > term > term)] : (($true = ((sK239 @ id @ (lam @ (X231 @ sh @ one)) @ id))) | (((X231 @ (comp @ (sK241 @ X231) @ (sK240 @ X231)) @ (sub @ (sK242 @ X231) @ (sK240 @ X231)))) != ((sub @ (X231 @ (sK241 @ X231) @ (sK242 @ X231)) @ (sK240 @ X231)))) | ((((sK239 @ id @ (X231 @ id @ (sK243 @ X231)) @ id)) != $true) & ($true = ((sK239 @ id @ (sK243 @ X231) @ id))))) & (((sK239 @ id @ (lam @ sK238) @ id)) != $true)) & ! [X236 : term,X237 : (subst > term > subst > $o)] : ((! [X239 : term] : ((((X237 @ id @ (sK244 @ X237 @ id @ X239) @ id)) = $true) | ($true != ((X237 @ id @ X239 @ id)))) & ($true != ((X237 @ id @ (lam @ (sK244 @ X237 @ sh @ one)) @ id))) & ! [X240 : subst,X241 : term,X242 : subst] : (((sub @ (sK244 @ X237 @ X240 @ X241) @ X242)) = ((sK244 @ X237 @ (comp @ X240 @ X242) @ (sub @ X241 @ X242))))) | ($true = ((X237 @ id @ (lam @ (sub @ X236 @ (push @ one @ sh))) @ id))) | (($true = ((X237 @ id @ (sK245 @ X237 @ X236) @ id))) & (((X237 @ id @ (sub @ X236 @ (push @ (sK245 @ X237 @ X236) @ id)) @ id)) != $true))))) & ((hoasinduction_lem3v2a = $true) | (! [X247 : term] : (((sK247 @ X247)) = ((sK246 @ id @ X247 @ id))) & ($true != ((sK247 @ (lam @ sK248)))) & ! [X248 : (subst > term > term)] : ((($true != ((sK246 @ id @ (X248 @ id @ (sK249 @ X248)) @ id))) & ($true = ((sK246 @ id @ (sK249 @ X248) @ id)))) | (((sK246 @ id @ (lam @ (X248 @ sh @ one)) @ id)) = $true) | (((X248 @ (comp @ (sK251 @ X248) @ (sK250 @ X248)) @ (sub @ (sK252 @ X248) @ (sK250 @ X248)))) != ((sub @ (X248 @ (sK251 @ X248) @ (sK252 @ X248)) @ (sK250 @ X248))))) & ! [X253 : term] : ((((sK247 @ X253)) != $true) | ($true = ((sK247 @ (sub @ sK248 @ (push @ X253 @ id)))))))) & (! [X254 : (subst > term > subst > $o),X255 : (term > $o),X256 : term] : ((((X254 @ id @ (sK253 @ X255 @ X254) @ id)) != ((X255 @ (sK253 @ X255 @ X254)))) | ($true = ((X255 @ (lam @ X256)))) | (! [X259 : term] : (($true = ((X254 @ id @ (sK254 @ X254 @ id @ X259) @ id))) | ($true != ((X254 @ id @ X259 @ id)))) & ($true != ((X254 @ id @ (lam @ (sK254 @ X254 @ sh @ one)) @ id))) & ! [X260 : subst,X261 : subst,X262 : term] : (((sK254 @ X254 @ (comp @ X261 @ X260) @ (sub @ X262 @ X260))) = ((sub @ (sK254 @ X254 @ X261 @ X262) @ X260)))) | ((((X255 @ (sK255 @ X256 @ X255))) = $true) & ($true != ((X255 @ (sub @ X256 @ (push @ (sK255 @ X256 @ X255) @ id))))))) | (hoasinduction_lem3v2a != $true)) & (pushprop_lem2v2 = $true) & ((hoasinduction_no_psi_cond_lthm = $true) | (! [X264 : term,X265 : (term > $o)] : (((((X265 @ (sK256 @ X265))) = $true) & ($true != ((X265 @ (ap @ (sK257 @ X265) @ (sK256 @ X265))))) & (((X265 @ (sK257 @ X265))) = $true)) | (($true != ((X265 @ (sK258 @ X265)))) & ($true = ((var @ (sK258 @ X265))))) | (($true != ((X265 @ (lam @ (sK259 @ X265))))) & ! [X270 : term] : (($true != ((X265 @ X270))) | (((X265 @ (sub @ (sK259 @ X265) @ (push @ X270 @ id)))) = $true))) | ($true = ((X265 @ X264)))) & ($true != sP4) & ! [X271 : (subst > term > subst > $o)] : ! [X273 : term] : (((sK260 @ X271 @ X273)) = ((X271 @ id @ X273 @ id))) & ! [X274 : term,X275 : (subst > term > subst > $o),X276 : (term > $o)] : ((($true != ((X275 @ id @ (lam @ (sK261 @ X275 @ sh @ one)) @ id))) & ! [X278 : term] : (($true != ((X275 @ id @ X278 @ id))) | ($true = ((X275 @ id @ (sK261 @ X275 @ id @ X278) @ id)))) & ! [X279 : subst,X280 : term,X281 : subst] : (((sK261 @ X275 @ (comp @ X281 @ X279) @ (sub @ X280 @ X279))) = ((sub @ (sK261 @ X275 @ X281 @ X280) @ X279)))) | ((((X276 @ (sub @ X274 @ (push @ (sK262 @ X276 @ X274) @ id)))) != $true) & (((X276 @ (sK262 @ X276 @ X274))) = $true)) | (((X276 @ (lam @ X274))) = $true) | (((X275 @ id @ (sK263 @ X276 @ X275) @ id)) != ((X276 @ (sK263 @ X276 @ X275))))) & ! [X284 : term] : (((sub @ X284 @ id)) = X284))) & ((! [X287 : term,X288 : term] : (($true != ((sK265 @ X287))) | ($true = ((sK265 @ (ap @ X288 @ X287)))) | ($true != ((sK265 @ X288)))) & ! [X289 : term] : ((((sK265 @ X289)) = $true) | ($true != ((var @ X289)))) & ! [X290 : term] : (($true = ((sK265 @ (lam @ X290)))) | (($true = ((sK265 @ (sK266 @ X290)))) & ($true != ((sK265 @ (sub @ X290 @ (push @ (sK266 @ X290) @ id))))))) & (((sK265 @ sK264)) != $true)) | ($true = sP4) | ! [X293 : (term > $o)] : (((sK267 @ id @ (sK268 @ X293) @ id)) != ((X293 @ (sK268 @ X293)))) | (! [X298 : (subst > term > term)] : ((((sK270 @ id @ (lam @ (X298 @ sh @ one)) @ id)) = $true) | (($true = ((sK270 @ id @ (sK272 @ X298) @ id))) & (((sK270 @ id @ (X298 @ id @ (sK272 @ X298)) @ id)) != $true)) | (((X298 @ (comp @ (sK275 @ X298) @ (sK273 @ X298)) @ (sub @ (sK274 @ X298) @ (sK273 @ X298)))) != ((sub @ (X298 @ (sK275 @ X298) @ (sK274 @ X298)) @ (sK273 @ X298))))) & ! [X303 : term] : (($true = ((sK271 @ (sub @ sK269 @ (push @ X303 @ id))))) | ($true != ((sK271 @ X303)))) & (((sK271 @ (lam @ sK269))) != $true) & ! [X304 : term] : (((sK270 @ id @ X304 @ id)) = ((sK271 @ X304)))) | (((sub @ sK276 @ id)) != sK276) | (hoasinduction_no_psi_cond_lthm != $true)) & (hoaslaminj_gthm = $true) & (pushprop_lthm_orig = $true) & (induction2_gthm = $true) & ((hoasinduction_lem3 = $true) | (! [X308 : (subst > term > term)] : ((((sK277 @ id @ (lam @ (X308 @ sh @ one)) @ id)) = $true) | (((sub @ (X308 @ (sK280 @ X308) @ (sK281 @ X308)) @ (sK279 @ X308))) != ((X308 @ (comp @ (sK280 @ X308) @ (sK279 @ X308)) @ (sub @ (sK281 @ X308) @ (sK279 @ X308))))) | ((((sK277 @ id @ (X308 @ id @ (sK282 @ X308)) @ id)) != $true) & ($true = ((sK277 @ id @ (sK282 @ X308) @ id))))) & ! [X313 : subst,X314 : subst,X315 : subst,X316 : term] : (($true != ((sK277 @ X313 @ X316 @ (comp @ X315 @ X314)))) | ($true = ((sK277 @ (comp @ X313 @ X315) @ (sub @ X316 @ X315) @ X314)))) & ! [X317 : subst,X318 : subst,X319 : subst,X320 : term] : (($true = ((sK277 @ X317 @ X320 @ (comp @ X318 @ X319)))) | (((sK277 @ (comp @ X317 @ X318) @ (sub @ X320 @ X318) @ X319)) != $true)) & ! [X321 : term] : (($true != ((sK277 @ id @ X321 @ id))) | ($true = ((sK277 @ id @ (sub @ sK278 @ (push @ X321 @ id)) @ id)))) & (((sK277 @ id @ (lam @ sK278) @ id)) != $true))) & (! [X322 : (subst > term > subst > $o),X323 : term] : ((($true != ((X322 @ id @ (lam @ (sK283 @ X322 @ sh @ one)) @ id))) & ! [X325 : subst,X326 : subst,X327 : term] : (((sub @ (sK283 @ X322 @ X326 @ X327) @ X325)) = ((sK283 @ X322 @ (comp @ X326 @ X325) @ (sub @ X327 @ X325)))) & ! [X328 : term] : (($true = ((X322 @ id @ (sK283 @ X322 @ id @ X328) @ id))) | ($true != ((X322 @ id @ X328 @ id))))) | (($true = ((X322 @ (sK284 @ X322) @ (sK287 @ X322) @ (comp @ (sK286 @ X322) @ (sK285 @ X322))))) & ($true != ((X322 @ (comp @ (sK284 @ X322) @ (sK286 @ X322)) @ (sub @ (sK287 @ X322) @ (sK286 @ X322)) @ (sK285 @ X322))))) | ((((X322 @ (sK288 @ X322) @ (sK291 @ X322) @ (comp @ (sK289 @ X322) @ (sK290 @ X322)))) != $true) & (((X322 @ (comp @ (sK288 @ X322) @ (sK289 @ X322)) @ (sub @ (sK291 @ X322) @ (sK289 @ X322)) @ (sK290 @ X322))) = $true)) | (($true = ((X322 @ id @ (sK292 @ X323 @ X322) @ id))) & ($true != ((X322 @ id @ (sub @ X323 @ (push @ (sK292 @ X323 @ X322) @ id)) @ id)))) | ($true = ((X322 @ id @ (lam @ X323) @ id)))) | (hoasinduction_lem3 != $true)) & ((hoasinduction_lem0_lthm = $true) | ! [X339 : (term > $o)] : (((X339 @ (sK294 @ X339))) != ((sK293 @ id @ (sK294 @ X339) @ id)))) & (! [X341 : (subst > term > subst > $o)] : ! [X343 : term] : (((X341 @ id @ X343 @ id)) = ((sK295 @ X341 @ X343))) | (hoasinduction_lem0_lthm != $true)) & (hoasinduction_lem1 = $true) & ((((comp @ sh @ (push @ sK296 @ sK297))) != sK297) | ! [X346 : term,X347 : (term > $o),X348 : (term > $o),X349 : subst,X350 : term] : ((((X347 @ X346)) != $true) | ($true = ((X348 @ (sub @ X346 @ (push @ X350 @ X349)))))) | (sK298 != ((sub @ one @ (push @ sK298 @ sK299)))) | (pushprop_lem1_lthm != $true)) & ((pushprop_lem1_lthm = $true) | (! [X353 : term,X354 : subst] : (((comp @ sh @ (push @ X353 @ X354))) = X354) & (($true = ((sK301 @ sK300))) & ($true != ((sK302 @ (sub @ sK300 @ (push @ sK304 @ sK303)))))) & ! [X360 : term,X361 : subst] : (((sub @ one @ (push @ X360 @ X361))) = X360))) & (((d2subst @ d_id)) = ((push @ (d2term @ d_one) @ (d2subst @ d_id)))) & (ulamvarsh = $true) & ((shinj = $true) | ((((sub @ sK305 @ sh)) = ((sub @ sK306 @ sh))) & (sK305 != sK306))) & (! [X364 : term,X365 : term] : ((((sub @ X365 @ sh)) != ((sub @ X364 @ sh))) | (X364 = X365)) | (shinj != $true)) & (pushprop_lem1_gthm = $true) & ((induction = $true) | (! [X368 : term] : ((((sK307 @ (lam @ X368))) = $true) | ($true != ((sK307 @ X368)))) & ! [X369 : term] : ((((sK307 @ X369)) = $true) | (((var @ X369)) != $true)) & ! [X370 : term,X371 : term] : ((((sK307 @ X371)) != $true) | ($true != ((sK307 @ X370))) | (((sK307 @ (ap @ X371 @ X370))) = $true)) & ($true != ((sK307 @ sK308))))) & (! [X372 : (term > $o),X373 : term] : (((((X372 @ (lam @ (sK309 @ X372)))) != $true) & (((X372 @ (sK309 @ X372))) = $true)) | (($true != ((X372 @ (sK310 @ X372)))) & (((var @ (sK310 @ X372))) = $true)) | ((((X372 @ (sK312 @ X372))) = $true) & ($true = ((X372 @ (sK311 @ X372)))) & (((X372 @ (ap @ (sK312 @ X372) @ (sK311 @ X372)))) != $true)) | (((X372 @ X373)) = $true)) | (induction != $true)) & ((axidr = $true) | (((comp @ sK313 @ id)) != sK313)) & (! [X379 : subst] : (((comp @ X379 @ id)) = X379) | (axidr != $true)) & ! [X380 : subst] : (((d2subst @ (sK314 @ X380))) = X380) & (pushprop = $true) & (! [X382 : (subst > term > subst > $o),X383 : term] : ((! [X385 : subst,X386 : term,X387 : subst] : (((sK315 @ X382 @ (comp @ X387 @ X385) @ (sub @ X386 @ X385))) = ((sub @ (sK315 @ X382 @ X387 @ X386) @ X385))) & ! [X388 : term] : (($true = ((X382 @ id @ (sK315 @ X382 @ id @ X388) @ id))) | ($true != ((X382 @ id @ X388 @ id)))) & ($true != ((X382 @ id @ (lam @ (sK315 @ X382 @ sh @ one)) @ id)))) | ((((X382 @ id @ (sK316 @ X382) @ id)) != $true) & ($true = ((var @ (sub @ (sK316 @ X382) @ id))))) | ($true = ((X382 @ id @ X383 @ id))) | ($true = ((sP3 @ X382))) | (($true = ((X382 @ (sK317 @ X382) @ (sK319 @ X382) @ (comp @ (sK320 @ X382) @ (sK318 @ X382))))) & ($true != ((X382 @ (comp @ (sK317 @ X382) @ (sK320 @ X382)) @ (sub @ (sK319 @ X382) @ (sK320 @ X382)) @ (sK318 @ X382))))) | ((((X382 @ (sK321 @ X382) @ (sK324 @ X382) @ (comp @ (sK323 @ X382) @ (sK322 @ X382)))) != $true) & (((X382 @ (comp @ (sK321 @ X382) @ (sK323 @ X382)) @ (sub @ (sK324 @ X382) @ (sK323 @ X382)) @ (sK322 @ X382))) = $true))) | (hoasinduction != $true)) & ((hoasinduction = $true) | (! [X400 : (subst > term > term)] : ((((X400 @ (comp @ (sK329 @ X400) @ (sK327 @ X400)) @ (sub @ (sK328 @ X400) @ (sK327 @ X400)))) != ((sub @ (X400 @ (sK329 @ X400) @ (sK328 @ X400)) @ (sK327 @ X400)))) | ((((sK325 @ id @ (X400 @ id @ (sK330 @ X400)) @ id)) != $true) & (((sK325 @ id @ (sK330 @ X400) @ id)) = $true)) | ($true = ((sK325 @ id @ (lam @ (X400 @ sh @ one)) @ id)))) & ! [X405 : term] : (($true = ((sK325 @ id @ X405 @ id))) | ($true != ((var @ (sub @ X405 @ id))))) & ($true != ((sK325 @ id @ sK326 @ id))) & (((sP3 @ sK325)) != $true) & ! [X406 : subst,X407 : subst,X408 : term,X409 : subst] : (($true != ((sK325 @ X406 @ X408 @ (comp @ X409 @ X407)))) | ($true = ((sK325 @ (comp @ X406 @ X409) @ (sub @ X408 @ X409) @ X407)))) & ! [X410 : subst,X411 : subst,X412 : subst,X413 : term] : ((((sK325 @ X410 @ X413 @ (comp @ X412 @ X411))) = $true) | (((sK325 @ (comp @ X410 @ X412) @ (sub @ X413 @ X412) @ X411)) != $true)))) & ! [X414 : d_term,X415 : d_term] : ((X414 = X415) | (((d2term @ X414)) != ((d2term @ X415)))) & (hoasinduction_gthm = $true) & ((hoasinduction_lem3a = $true) | (($true != ((sK331 @ id @ (lam @ sK332) @ id))) & ! [X418 : (subst > term > term)] : ((((sK331 @ id @ (lam @ (X418 @ sh @ one)) @ id)) = $true) | (($true != ((sK331 @ id @ (X418 @ id @ (sK333 @ X418)) @ id))) & ($true = ((sK331 @ id @ (sK333 @ X418) @ id)))) | (((X418 @ (comp @ (sK336 @ X418) @ (sK335 @ X418)) @ (sub @ (sK334 @ X418) @ (sK335 @ X418)))) != ((sub @ (X418 @ (sK336 @ X418) @ (sK334 @ X418)) @ (sK335 @ X418))))) & ! [X423 : term] : (($true = ((sK331 @ id @ (sub @ sK332 @ (push @ X423 @ id)) @ id))) | ($true != ((sK331 @ id @ X423 @ id)))))) & (! [X424 : (subst > term > subst > $o),X425 : term] : (($true = ((X424 @ id @ (lam @ X425) @ id))) | (($true != ((X424 @ id @ (lam @ (sK337 @ X424 @ sh @ one)) @ id))) & ! [X427 : term] : ((((X424 @ id @ (sK337 @ X424 @ id @ X427) @ id)) = $true) | ($true != ((X424 @ id @ X427 @ id)))) & ! [X428 : term,X429 : subst,X430 : subst] : (((sK337 @ X424 @ (comp @ X430 @ X429) @ (sub @ X428 @ X429))) = ((sub @ (sK337 @ X424 @ X430 @ X428) @ X429)))) | ((((X424 @ id @ (sub @ X425 @ (push @ (sK338 @ X425 @ X424) @ id)) @ id)) != $true) & (((X424 @ id @ (sK338 @ X425 @ X424) @ id)) = $true))) | (hoasinduction_lem3a != $true)) & (axclos = $true) & (hoasinduction_lem2_gthm = $true) & (! [X432 : term,X433 : (term > $o)] : ((($true != ((X433 @ (sK339 @ X433)))) & ($true = ((var @ (sK339 @ X433))))) | (($true = ((X433 @ (sK341 @ X433)))) & (((X433 @ (ap @ (sK341 @ X433) @ (sK340 @ X433)))) != $true) & ($true = ((X433 @ (sK340 @ X433))))) | (((X433 @ X432)) = $true) | (! [X438 : term] : (($true != ((X433 @ X438))) | ($true = ((X433 @ (sub @ (sK342 @ X433) @ (push @ X438 @ id)))))) & (((X433 @ (lam @ (sK342 @ X433)))) != $true))) | (induction2 != $true)) & ((induction2 = $true) | (! [X441 : term] : (($true = ((sK344 @ X441))) | ($true != ((var @ X441)))) & ! [X442 : term,X443 : term] : (($true != ((sK344 @ X443))) | ($true = ((sK344 @ (ap @ X443 @ X442)))) | (((sK344 @ X442)) != $true)) & ($true != ((sK344 @ sK343))) & ! [X444 : term] : (((((sK344 @ (sK345 @ X444))) = $true) & ($true != ((sK344 @ (sub @ X444 @ (push @ (sK345 @ X444) @ id)))))) | (((sK344 @ (lam @ X444))) = $true)))) & ((induction2lem_lthm = $true) | ($true != sP2)) & (($true = sP2) | (induction2lem_lthm != $true)) & (! [X446 : term,X447 : subst,X448 : (term > $o)] : ! [X450 : term] : (((X448 @ (sub @ X450 @ (push @ X446 @ X447)))) = ((sK346 @ X448 @ X447 @ X446 @ X450))) | (pushprop_lem0_lthm != $true)) & ((pushprop_lem0_lthm = $true) | ! [X454 : (term > $o)] : (((X454 @ (sK350 @ X454))) != ((sK349 @ (sub @ (sK350 @ X454) @ (push @ sK347 @ sK348)))))) & (hoasinduction_lem3b_gthm = $true) & (hoaslamnotvar_gthm = $true) & (! [X456 : term] : ! [X458 : subst,X459 : term] : (((sub @ X456 @ (push @ X459 @ X458))) = ((sK351 @ X456 @ X458 @ X459))) | (hoasinduction_lem3v2_f != $true)) & ((hoasinduction_lem3v2_f = $true) | ! [X461 : (subst > term > term)] : (((X461 @ (sK353 @ X461) @ (sK354 @ X461))) != ((sub @ sK352 @ (push @ (sK354 @ X461) @ (sK353 @ X461)))))) & ((hoasinduction_lthm_3 = $true) | (! [X464 : (term > $o),X465 : term] : ((($true != ((X464 @ (sK355 @ X464)))) & (((var @ (sK355 @ X464))) = $true)) | (((X464 @ X465)) = $true) | (($true != ((X464 @ (lam @ (sK356 @ X464))))) & ! [X468 : term] : (($true != ((X464 @ X468))) | ($true = ((X464 @ (sub @ (sK356 @ X464) @ (push @ X468 @ id))))))) | (($true = ((X464 @ (sK357 @ X464)))) & (((X464 @ (ap @ (sK358 @ X464) @ (sK357 @ X464)))) != $true) & (((X464 @ (sK358 @ X464))) = $true))) & ! [X471 : (subst > term > subst > $o)] : ! [X473 : term] : (((X471 @ id @ X473 @ id)) = ((sK359 @ X471 @ X473))) & (sP1 != $true) & ! [X474 : term] : (((sub @ X474 @ id)) = X474) & ! [X475 : term,X476 : (subst > term > subst > $o),X477 : (term > $o)] : ((((X476 @ id @ (sK360 @ X477 @ X476) @ id)) != ((X477 @ (sK360 @ X477 @ X476)))) | (($true != ((X476 @ id @ (lam @ (sK361 @ X476 @ sh @ one)) @ id))) & ! [X480 : subst,X481 : subst,X482 : term] : (((sK361 @ X476 @ (comp @ X481 @ X480) @ (sub @ X482 @ X480))) = ((sub @ (sK361 @ X476 @ X481 @ X482) @ X480))) & ! [X483 : term] : (($true != ((X476 @ id @ X483 @ id))) | (((X476 @ id @ (sK361 @ X476 @ id @ X483) @ id)) = $true))) | ($true = ((X477 @ (lam @ X475)))) | (($true = ((X477 @ (sK362 @ X477 @ X475)))) & (((X477 @ (sub @ X475 @ (push @ (sK362 @ X477 @ X475) @ id)))) != $true))))) & ((! [X487 : term] : ((((sK363 @ X487)) = $true) | (((var @ X487)) != $true)) & ($true != ((sK363 @ sK364))) & ! [X488 : term] : (($true = ((sK363 @ (lam @ X488)))) | ((((sK363 @ (sK365 @ X488))) = $true) & ($true != ((sK363 @ (sub @ X488 @ (push @ (sK365 @ X488) @ id))))))) & ! [X490 : term,X491 : term] : (($true != ((sK363 @ X490))) | ($true = ((sK363 @ (ap @ X491 @ X490)))) | ($true != ((sK363 @ X491))))) | ! [X493 : (term > $o)] : (((sK366 @ id @ (sK367 @ X493) @ id)) != ((X493 @ (sK367 @ X493)))) | (sP1 = $true) | (sK368 != ((sub @ sK368 @ id))) | (! [X499 : term] : (((sK370 @ id @ X499 @ id)) = ((sK371 @ X499))) & ! [X500 : (subst > term > term)] : ((((sK370 @ id @ (lam @ (X500 @ sh @ one)) @ id)) = $true) | (((X500 @ (comp @ (sK373 @ X500) @ (sK372 @ X500)) @ (sub @ (sK374 @ X500) @ (sK372 @ X500)))) != ((sub @ (X500 @ (sK373 @ X500) @ (sK374 @ X500)) @ (sK372 @ X500)))) | (($true = ((sK370 @ id @ (sK375 @ X500) @ id))) & (((sK370 @ id @ (X500 @ id @ (sK375 @ X500)) @ id)) != $true))) & (((sK371 @ (lam @ sK369))) != $true) & ! [X505 : term] : ((((sK371 @ X505)) != $true) | ($true = ((sK371 @ (sub @ sK369 @ (push @ X505 @ id))))))) | (hoasinduction_lthm_3 != $true)) & (((d2term @ d_one)) = ((hoasap @ (d2subst @ d_id) @ (d2term @ d_one) @ (d2subst @ d_id) @ (d2term @ d_one)))) & ((pushprop_lem1v2_lthm = $true) | ((($true = ((sK377 @ sK378))) & ! [X510 : term] : (((sK379 @ X510)) = ((sK377 @ (sub @ X510 @ (push @ sK378 @ sK376))))) & (((sK379 @ one)) != $true)) & ! [X511 : subst,X512 : term] : (((sub @ one @ (push @ X512 @ X511))) = X512))) & (! [X513 : subst,X514 : (term > $o),X515 : term,X516 : (term > $o)] : ((((X514 @ X515)) != $true) | (((X516 @ (sK380 @ X516 @ X515 @ X514 @ X513))) != ((X514 @ (sub @ (sK380 @ X516 @ X515 @ X514 @ X513) @ (push @ X515 @ X513))))) | (((X516 @ one)) = $true)) | (((sub @ one @ (push @ sK382 @ sK381))) != sK382) | (pushprop_lem1v2_lthm != $true)) & ! [X520 : d_subst] : (d_id = X520) & (! [X521 : term,X522 : term,X523 : term,X524 : term] : ((((ap @ (sub @ X521 @ id) @ X522)) != ((ap @ (sub @ X524 @ id) @ X523))) | (X521 = X524)) | ((((ap @ sK385 @ sK383)) = ((ap @ sK384 @ sK386))) & (sK385 != sK384)) | (sK387 != ((sub @ sK387 @ id))) | (hoasapinj1_lthm != $true)) & ((hoasapinj1_lthm = $true) | (((((ap @ (sub @ sK391 @ id) @ sK390)) = ((ap @ (sub @ sK388 @ id) @ sK389))) & (sK391 != sK388)) & ! [X534 : term,X535 : term,X536 : term,X537 : term] : ((((ap @ X536 @ X534)) != ((ap @ X535 @ X537))) | (X535 = X536)) & ! [X538 : term] : (((sub @ X538 @ id)) = X538))) & (((d2term @ d_one)) = one) & (apnotvar = $true) & (axabs = $true) & ((pushprop_lem1v2 = $true) | (($true != ((sK393 @ one))) & ! [X543 : term] : (((sK395 @ (sub @ X543 @ (push @ sK394 @ sK392)))) = ((sK393 @ X543))) & ($true = ((sK395 @ sK394))))) & (! [X544 : subst,X545 : (term > $o),X546 : term,X547 : (term > $o)] : (($true = ((X545 @ one))) | (((X545 @ (sK396 @ X547 @ X546 @ X545 @ X544))) != ((X547 @ (sub @ (sK396 @ X547 @ X546 @ X545 @ X544) @ (push @ X546 @ X544))))) | ($true != ((X547 @ X546)))) | (pushprop_lem1v2 != $true)) & (! [X549 : term,X550 : term,X551 : term,X552 : term] : ((((ap @ X551 @ X549)) != ((ap @ X550 @ X552))) | (X549 = X552)) | (apinj2 != $true)) & ((apinj2 = $true) | ((((ap @ sK399 @ sK397)) = ((ap @ sK398 @ sK400))) & (sK400 != sK397))) & (hoasinduction_lem1v2_gthm = $true) & (! [X557 : term,X558 : term] : ((X557 = X558) | (((lam @ X558)) != ((lam @ X557)))) | (laminj != $true)) & ((laminj = $true) | ((sK402 != sK401) & (((lam @ sK401)) = ((lam @ sK402))))) & (pushprop_lem2v2_gthm = $true) & (ulamvarind = $true) & ((hoaslamnotap = $true) | ((((lam @ (sK403 @ sh @ one))) = ((ap @ (sub @ sK405 @ id) @ sK404))) & ! [X564 : subst,X565 : subst,X566 : term] : (((sub @ (sK403 @ X565 @ X566) @ X564)) = ((sK403 @ (comp @ X565 @ X564) @ (sub @ X566 @ X564)))))) & (! [X567 : (subst > term > term),X568 : term,X569 : term] : ((((ap @ (sub @ X569 @ id) @ X568)) != ((lam @ (X567 @ sh @ one)))) | (((X567 @ (comp @ (sK407 @ X567) @ (sK406 @ X567)) @ (sub @ (sK408 @ X567) @ (sK406 @ X567)))) != ((sub @ (X567 @ (sK407 @ X567) @ (sK408 @ X567)) @ (sK406 @ X567))))) | (hoaslamnotap != $true)) & (! [X573 : term] : ! [X575 : subst,X576 : term] : (((sK409 @ X573 @ X575 @ X576)) = ((sub @ X573 @ (push @ X576 @ X575)))) | (hoasinduction_lem3v2_f_lthm != $true)) & ((hoasinduction_lem3v2_f_lthm = $true) | ! [X578 : (subst > term > term)] : (((X578 @ (sK411 @ X578) @ (sK412 @ X578))) != ((sub @ sK410 @ (push @ (sK412 @ X578) @ (sK411 @ X578)))))) & (hoaslamnotvar_lthm = $true) & ((hoasinduction_lem3b_lthm = $true) | ! [X582 : (subst > term > term)] : (((X582 @ sh @ one)) != ((sub @ sK413 @ (push @ one @ sh))))) & (! [X583 : term] : (((sK414 @ X583 @ sh @ one)) = ((sub @ X583 @ (push @ one @ sh)))) | (hoasinduction_lem3b_lthm != $true)) & (! [X585 : (subst > term > subst > $o),X586 : term] : (($true = ((X585 @ id @ (lam @ (sub @ X586 @ (push @ one @ sh))) @ id))) | (($true != ((X585 @ id @ (sub @ X586 @ (push @ (sK415 @ X586 @ X585) @ id)) @ id))) & ($true = ((X585 @ id @ (sK415 @ X586 @ X585) @ id)))) | (($true != ((X585 @ id @ (lam @ (sK417 @ X585 @ sh @ one)) @ id))) & ! [X590 : subst,X591 : term,X592 : subst] : (((sub @ (sK417 @ X585 @ X590 @ X591) @ X592)) = ((sub @ (sub @ (sK416 @ X585) @ (push @ X591 @ X590)) @ X592))) & ! [X593 : subst,X594 : term,X595 : subst] : (((sub @ (sK416 @ X585) @ (push @ (sub @ X594 @ X595) @ (comp @ X593 @ X595)))) = ((sK417 @ X585 @ (comp @ X593 @ X595) @ (sub @ X594 @ X595)))) & ! [X596 : term] : (($true != ((X585 @ id @ X596 @ id))) | (((X585 @ id @ (sK417 @ X585 @ id @ X596) @ id)) = $true)))) | (hoasinduction_lem3aaa != $true)) & ((hoasinduction_lem3aaa = $true) | ((((sK418 @ id @ (lam @ (sub @ sK419 @ (push @ one @ sh))) @ id)) != $true) & ! [X599 : term] : ((((sK418 @ id @ (sub @ sK419 @ (push @ X599 @ id)) @ id)) = $true) | ($true != ((sK418 @ id @ X599 @ id)))) & ! [X600 : term,X601 : (subst > term > term)] : (($true = ((sK418 @ id @ (lam @ (X601 @ sh @ one)) @ id))) | (((sub @ (sub @ X600 @ (push @ (sK421 @ X601 @ X600) @ (sK420 @ X601 @ X600))) @ (sK422 @ X601 @ X600))) != ((sub @ (X601 @ (sK420 @ X601 @ X600) @ (sK421 @ X601 @ X600)) @ (sK422 @ X601 @ X600)))) | (((X601 @ (comp @ (sK423 @ X601 @ X600) @ (sK425 @ X601 @ X600)) @ (sub @ (sK424 @ X601 @ X600) @ (sK425 @ X601 @ X600)))) != ((sub @ X600 @ (push @ (sub @ (sK424 @ X601 @ X600) @ (sK425 @ X601 @ X600)) @ (comp @ (sK423 @ X601 @ X600) @ (sK425 @ X601 @ X600)))))) | (($true = ((sK418 @ id @ (sK426 @ X601) @ id))) & (((sK418 @ id @ (X601 @ id @ (sK426 @ X601)) @ id)) != $true))))) & ((axshiftcons = $true) | (sK428 != ((comp @ sh @ (push @ sK427 @ sK428))))) & (! [X611 : term,X612 : subst] : (((comp @ sh @ (push @ X611 @ X612))) = X612) | (axshiftcons != $true)) & (ulamvar1 != $true) & ((substmonoid = $true) | (sK429 != ((comp @ sK429 @ id))) | (((comp @ id @ sK430)) != sK430)) & ((! [X615 : subst] : (((comp @ X615 @ id)) = X615) & ! [X616 : subst] : (((comp @ id @ X616)) = X616)) | (substmonoid != $true)) & (hoasapinj2_gthm = $true) & (! [X617 : (term > $o),X618 : term,X619 : (subst > term > subst > $o)] : (($true = ((X617 @ (lam @ X618)))) | (! [X621 : subst,X622 : term,X623 : subst] : (((sub @ (sK431 @ X619 @ X623 @ X622) @ X621)) = ((sK431 @ X619 @ (comp @ X623 @ X621) @ (sub @ X622 @ X621)))) & (((X619 @ id @ (lam @ (sK431 @ X619 @ sh @ one)) @ id)) != $true) & ! [X624 : term] : ((((X619 @ id @ (sK431 @ X619 @ id @ X624) @ id)) = $true) | (((X619 @ id @ X624 @ id)) != $true))) | (($true = ((X617 @ (sK432 @ X618 @ X617)))) & ($true != ((X617 @ (sub @ X618 @ (push @ (sK432 @ X618 @ X617) @ id)))))) | (((X619 @ id @ (sK433 @ X619 @ X617) @ id)) != ((X617 @ (sK433 @ X619 @ X617))))) | (((sub @ sK434 @ id)) != sK434) | ! [X629 : (subst > term > term)] : (((X629 @ (sK436 @ X629) @ (sK437 @ X629))) != ((sub @ sK435 @ (push @ (sK437 @ X629) @ (sK436 @ X629))))) | (hoasinduction_lem3v2a_lthm != $true)) & ((hoasinduction_lem3v2a_lthm = $true) | (((((sK438 @ (lam @ sK439))) != $true) & ! [X635 : (subst > term > term)] : ((((sub @ (X635 @ (sK443 @ X635) @ (sK442 @ X635)) @ (sK441 @ X635))) != ((X635 @ (comp @ (sK443 @ X635) @ (sK441 @ X635)) @ (sub @ (sK442 @ X635) @ (sK441 @ X635))))) | (((sK440 @ id @ (lam @ (X635 @ sh @ one)) @ id)) = $true) | (($true != ((sK440 @ id @ (X635 @ id @ (sK444 @ X635)) @ id))) & ($true = ((sK440 @ id @ (sK444 @ X635) @ id))))) & ! [X640 : term] : (($true != ((sK438 @ X640))) | ($true = ((sK438 @ (sub @ sK439 @ (push @ X640 @ id)))))) & ! [X641 : term] : (((sK440 @ id @ X641 @ id)) = ((sK438 @ X641)))) & ! [X642 : term] : (((sub @ X642 @ id)) = X642) & ! [X643 : term] : ! [X645 : subst,X646 : term] : (((sub @ X643 @ (push @ X646 @ X645))) = ((sK445 @ X643 @ X645 @ X646))))) & (! [X647 : (subst > term > subst > $o),X648 : term] : (($true = ((X647 @ id @ (lam @ (sub @ X648 @ (push @ one @ sh))) @ id))) | (! [X650 : term,X651 : subst,X652 : subst] : (((sub @ (sK446 @ X647 @ X651 @ X650) @ X652)) = ((sK446 @ X647 @ (comp @ X651 @ X652) @ (sub @ X650 @ X652)))) & ($true != ((X647 @ id @ (lam @ (sK446 @ X647 @ sh @ one)) @ id))) & ! [X653 : term] : (($true != ((X647 @ id @ X653 @ id))) | (((X647 @ id @ (sK446 @ X647 @ id @ X653) @ id)) = $true))) | (($true = ((X647 @ id @ (sK447 @ X648 @ X647) @ id))) & ($true != ((X647 @ id @ (sub @ X648 @ (push @ (sK447 @ X648 @ X647) @ id)) @ id))))) | (hoasinduction_lem3aa_lthm != $true)) & ((hoasinduction_lem3aa_lthm = $true) | ((((sK448 @ id @ (lam @ (sub @ sK449 @ (push @ one @ sh))) @ id)) != $true) & ! [X657 : (subst > term > term)] : ((((sub @ (X657 @ (sK451 @ X657) @ (sK450 @ X657)) @ (sK452 @ X657))) != ((X657 @ (comp @ (sK451 @ X657) @ (sK452 @ X657)) @ (sub @ (sK450 @ X657) @ (sK452 @ X657))))) | ($true = ((sK448 @ id @ (lam @ (X657 @ sh @ one)) @ id))) | (($true = ((sK448 @ id @ (sK453 @ X657) @ id))) & ($true != ((sK448 @ id @ (X657 @ id @ (sK453 @ X657)) @ id))))) & ! [X662 : term] : (($true != ((sK448 @ id @ X662 @ id))) | ($true = ((sK448 @ id @ (sub @ sK449 @ (push @ X662 @ id)) @ id)))))) & (! [X663 : term,X664 : term,X665 : term,X666 : term] : ((X664 = X665) | (((ap @ (sub @ X664 @ id) @ X666)) != ((ap @ (sub @ X665 @ id) @ X663)))) | (hoasapinj1 != $true)) & ((hoasapinj1 = $true) | ((sK456 != sK455) & (((ap @ (sub @ sK456 @ id) @ sK454)) = ((ap @ (sub @ sK455 @ id) @ sK457))))) & (hoasinduction_lem3a_gthm = $true) & (! [X671 : term,X672 : (term > $o),X673 : subst] : ((! [X675 : term] : (($true != ((X672 @ X675))) | ($true = ((X672 @ (sub @ (sK458 @ X672) @ (push @ X675 @ id)))))) & (((X672 @ (lam @ (sK458 @ X672)))) != $true)) | ((((X672 @ (sK459 @ X672))) = $true) & (((X672 @ (sK460 @ X672))) = $true) & ($true != ((X672 @ (ap @ (sK459 @ X672) @ (sK460 @ X672)))))) | ((((X672 @ (sub @ (sK461 @ X673 @ X672) @ X673))) != $true) & (((var @ (sK461 @ X673 @ X672))) = $true)) | (((X672 @ (sub @ X671 @ X673))) = $true)) | (induction2lem != $true)) & ((induction2lem = $true) | (! [X682 : term] : ((($true = ((sK463 @ (sK465 @ X682)))) & ($true != ((sK463 @ (sub @ X682 @ (push @ (sK465 @ X682) @ id)))))) | (((sK463 @ (lam @ X682))) = $true)) & ! [X684 : term,X685 : term] : (($true != ((sK463 @ X684))) | ($true != ((sK463 @ X685))) | ($true = ((sK463 @ (ap @ X684 @ X685))))) & ! [X686 : term] : (($true = ((sK463 @ (sub @ X686 @ sK464)))) | (((var @ X686)) != $true)) & ($true != ((sK463 @ (sub @ sK462 @ sK464)))))) & (hoasinduction_lem2v2_gthm = $true) & (pushprop_lthm = $true) & (lamnotap != $true) & (((d2subst @ d_id)) = id) & (! [X687 : (term > $o),X688 : term,X689 : (term > $o),X690 : subst,X691 : term] : (($true = ((X687 @ (sub @ X691 @ (push @ X688 @ X690))))) | ($true != ((X689 @ X691)))) | (pushprop_lem1 != $true)) & ((pushprop_lem1 = $true) | (($true != ((sK466 @ (sub @ sK470 @ (push @ sK467 @ sK469))))) & ($true = ((sK468 @ sK470))))) & (((d2term @ d_one)) = ((ap @ (d2term @ d_one) @ (d2term @ d_one)))) & (axapp = $true) & (hoaslam = (^[Y0 : subst]: ((^[Y1 : subst > term > term]: (d2term @ d_one))))) & ((hoasapinj2 = $true) | ((sK472 != sK474) & (((ap @ (sub @ sK471 @ id) @ sK474)) = ((ap @ (sub @ sK473 @ id) @ sK472))))) & (! [X701 : term,X702 : term,X703 : term,X704 : term] : ((X702 = X704) | (((ap @ (sub @ X703 @ id) @ X702)) != ((ap @ (sub @ X701 @ id) @ X704)))) | (hoasapinj2 != $true)) & (((d2subst @ d_id)) = sh) & (((d2term @ d_one)) = ((lam @ (d2term @ d_one)))) & (! [X705 : subst,X706 : term] : (((sub @ one @ (push @ X706 @ X705))) = X706) | (axvarcons != $true)) & ((axvarcons = $true) | (sK476 != ((sub @ one @ (push @ sK476 @ sK475))))) & (! [X709 : term] : (((sub @ X709 @ (push @ one @ sh))) = ((sK477 @ X709 @ sh @ one))) | (hoasinduction_lem3b != $true)) & ((hoasinduction_lem3b = $true) | ! [X712 : (subst > term > term)] : (((X712 @ sh @ one)) != ((sub @ sK478 @ (push @ one @ sh))))) & ((sK479 != ((comp @ sK479 @ id))) | (((comp @ id @ sK480)) != sK480) | (! [X715 : subst] : (((comp @ X715 @ id)) = X715) & ! [X716 : subst] : (((comp @ id @ X716)) = X716)) | (substmonoid_lthm != $true)) & ((substmonoid_lthm = $true) | (! [X717 : subst] : (((comp @ X717 @ id)) = X717) & ! [X718 : subst] : (((comp @ id @ X718)) = X718) & ((sK481 != ((comp @ sK481 @ id))) | (sK482 != ((comp @ id @ sK482)))))) & (axassoc = $true) & (lamnotvar = $true) & (pushprop_lem3v2_lthm = $true) & (termmset_gthm = $true) & ((hoasapinj2_lthm = $true) | (! [X721 : term,X722 : term,X723 : term,X724 : term] : ((X722 = X723) | (((ap @ X724 @ X723)) != ((ap @ X721 @ X722)))) & ((((ap @ (sub @ sK484 @ id) @ sK485)) = ((ap @ (sub @ sK483 @ id) @ sK486))) & (sK486 != sK485)))) & (((sK488 != sK489) & (((ap @ sK490 @ sK489)) = ((ap @ sK487 @ sK488)))) | ! [X733 : term,X734 : term,X735 : term,X736 : term] : ((((ap @ (sub @ X733 @ id) @ X736)) != ((ap @ (sub @ X734 @ id) @ X735))) | (X735 = X736)) | (hoasapinj2_lthm != $true)) & (hoasapnotvar = $true) & ! [X737 : d_subst,X738 : d_subst] : ((X737 = X738) | (((d2subst @ X738)) != ((d2subst @ X737)))) & (hoasinduction_lem3_gthm = $true) & (pushprop_lem3v2 = $true) & (! [X739 : (term > $o),X740 : term,X741 : (subst > term > subst > $o)] : ((((X741 @ id @ (sK491 @ X741 @ X739) @ id)) != ((X739 @ (sK491 @ X741 @ X739)))) | (($true = ((X741 @ (comp @ (sK492 @ X741) @ (sK494 @ X741)) @ (sub @ (sK495 @ X741) @ (sK494 @ X741)) @ (sK493 @ X741)))) & ($true != ((X741 @ (sK492 @ X741) @ (sK495 @ X741) @ (comp @ (sK494 @ X741) @ (sK493 @ X741)))))) | (($true != ((X741 @ (comp @ (sK498 @ X741) @ (sK499 @ X741)) @ (sub @ (sK497 @ X741) @ (sK499 @ X741)) @ (sK496 @ X741)))) & (((X741 @ (sK498 @ X741) @ (sK497 @ X741) @ (comp @ (sK499 @ X741) @ (sK496 @ X741)))) = $true)) | ($true = ((X739 @ (lam @ X740)))) | ((((X739 @ (sK500 @ X740 @ X739))) = $true) & ($true != ((X739 @ (sub @ X740 @ (push @ (sK500 @ X740 @ X739) @ id)))))) | (! [X753 : term] : ((((X741 @ id @ X753 @ id)) != $true) | (((X741 @ id @ (sK501 @ X741 @ id @ X753) @ id)) = $true)) & ($true != ((X741 @ id @ (lam @ (sK501 @ X741 @ sh @ one)) @ id))) & ! [X754 : term,X755 : subst,X756 : subst] : (((sub @ (sK501 @ X741 @ X756 @ X754) @ X755)) = ((sK501 @ X741 @ (comp @ X756 @ X755) @ (sub @ X754 @ X755)))))) | (hoasinduction_lem3v2 != $true)) & ((hoasinduction_lem3v2 = $true) | (! [X760 : term] : (((sK504 @ id @ X760 @ id)) = ((sK502 @ X760))) & ! [X761 : subst,X762 : subst,X763 : subst,X764 : term] : (($true != ((sK504 @ (comp @ X761 @ X763) @ (sub @ X764 @ X763) @ X762))) | ($true = ((sK504 @ X761 @ X764 @ (comp @ X763 @ X762))))) & ! [X765 : subst,X766 : term,X767 : subst,X768 : subst] : (($true = ((sK504 @ (comp @ X767 @ X768) @ (sub @ X766 @ X768) @ X765))) | ($true != ((sK504 @ X767 @ X766 @ (comp @ X768 @ X765))))) & (((sK502 @ (lam @ sK503))) != $true) & ! [X769 : term] : (($true != ((sK502 @ X769))) | ($true = ((sK502 @ (sub @ sK503 @ (push @ X769 @ id)))))) & ! [X770 : (subst > term > term)] : ((($true = ((sK504 @ id @ (sK505 @ X770) @ id))) & ($true != ((sK504 @ id @ (X770 @ id @ (sK505 @ X770)) @ id)))) | ($true = ((sK504 @ id @ (lam @ (X770 @ sh @ one)) @ id))) | (((X770 @ (comp @ (sK508 @ X770) @ (sK507 @ X770)) @ (sub @ (sK506 @ X770) @ (sK507 @ X770)))) != ((sub @ (X770 @ (sK508 @ X770) @ (sK506 @ X770)) @ (sK507 @ X770))))))) & (hoasinduction_p_and_p_prime = (^[Y0 : subst > term > subst > $o]: ((^[Y1 : term > $o]: (!! @ term @ (^[Y2 : term]: ((Y1 @ Y2) = (Y0 @ id @ Y2 @ id)))))))) & (hoasinduction_lem3v2_gthm = $true) & (! [X775 : term,X776 : (subst > term > subst > $o)] : ((($true != ((X776 @ id @ (lam @ (sK509 @ X776 @ sh @ one)) @ id))) & ! [X778 : subst,X779 : term,X780 : subst] : (((sK509 @ X776 @ (comp @ X778 @ X780) @ (sub @ X779 @ X780))) = ((sub @ (sK509 @ X776 @ X778 @ X779) @ X780))) & ! [X781 : term] : (($true != ((X776 @ id @ X781 @ id))) | (((X776 @ id @ (sK509 @ X776 @ id @ X781) @ id)) = $true))) | ((((X776 @ id @ (sK510 @ X776 @ X775) @ id)) = $true) & ($true != ((X776 @ id @ (sub @ X775 @ (push @ (sK510 @ X776 @ X775) @ id)) @ id)))) | (((X776 @ id @ (lam @ (sub @ X775 @ (push @ one @ sh))) @ id)) = $true)) | (hoasinduction_lem3aa != $true)) & ((hoasinduction_lem3aa = $true) | (! [X785 : (subst > term > term)] : (($true = ((sK512 @ id @ (lam @ (X785 @ sh @ one)) @ id))) | (((X785 @ (comp @ (sK513 @ X785) @ (sK515 @ X785)) @ (sub @ (sK514 @ X785) @ (sK515 @ X785)))) != ((sub @ (X785 @ (sK513 @ X785) @ (sK514 @ X785)) @ (sK515 @ X785)))) | (($true = ((sK512 @ id @ (sK516 @ X785) @ id))) & ($true != ((sK512 @ id @ (X785 @ id @ (sK516 @ X785)) @ id))))) & ! [X790 : term] : (($true != ((sK512 @ id @ X790 @ id))) | ($true = ((sK512 @ id @ (sub @ sK511 @ (push @ X790 @ id)) @ id)))) & ($true != ((sK512 @ id @ (lam @ (sub @ sK511 @ (push @ one @ sh))) @ id))))) & ! [X791 : d_term] : (d_one = X791) & (hoasinduction_lem1v2 = $true) & (! [X792 : (subst > term > subst > $o),X793 : term,X794 : (term > $o)] : ((($true != ((X792 @ (sK517 @ X792) @ (sK520 @ X792) @ (comp @ (sK518 @ X792) @ (sK519 @ X792))))) & ($true = ((X792 @ (comp @ (sK517 @ X792) @ (sK518 @ X792)) @ (sub @ (sK520 @ X792) @ (sK518 @ X792)) @ (sK519 @ X792))))) | ((((X792 @ (sK522 @ X792) @ (sK523 @ X792) @ (comp @ (sK521 @ X792) @ (sK524 @ X792)))) = $true) & ($true != ((X792 @ (comp @ (sK522 @ X792) @ (sK521 @ X792)) @ (sub @ (sK523 @ X792) @ (sK521 @ X792)) @ (sK524 @ X792))))) | ($true = ((X794 @ (lam @ X793)))) | (((X794 @ (sK525 @ X794 @ X792))) != ((X792 @ id @ (sK525 @ X794 @ X792) @ id))) | (! [X805 : term] : (($true != ((X792 @ id @ X805 @ id))) | ($true = ((X792 @ id @ (sK526 @ X792 @ id @ X805) @ id)))) & ! [X806 : subst,X807 : term,X808 : subst] : (((sK526 @ X792 @ (comp @ X806 @ X808) @ (sub @ X807 @ X808))) = ((sub @ (sK526 @ X792 @ X806 @ X807) @ X808))) & ($true != ((X792 @ id @ (lam @ (sK526 @ X792 @ sh @ one)) @ id)))) | ((((X794 @ (sub @ X793 @ (push @ (sK527 @ X794 @ X793) @ id)))) != $true) & ($true = ((X794 @ (sK527 @ X794 @ X793)))))) | (sK528 != ((sub @ sK528 @ id))) | (hoasinduction_lem3v2_lthm != $true)) & ((hoasinduction_lem3v2_lthm = $true) | ((! [X814 : subst,X815 : subst,X816 : subst,X817 : term] : ((((sK529 @ X814 @ X817 @ (comp @ X815 @ X816))) = $true) | (((sK529 @ (comp @ X814 @ X815) @ (sub @ X817 @ X815) @ X816)) != $true)) & ! [X818 : subst,X819 : subst,X820 : term,X821 : subst] : (($true != ((sK529 @ X819 @ X820 @ (comp @ X818 @ X821)))) | ($true = ((sK529 @ (comp @ X819 @ X818) @ (sub @ X820 @ X818) @ X821)))) & ($true != ((sK531 @ (lam @ sK530)))) & ! [X822 : term] : (((sK531 @ X822)) = ((sK529 @ id @ X822 @ id))) & ! [X823 : (subst > term > term)] : (((((sK529 @ id @ (sK532 @ X823) @ id)) = $true) & (((sK529 @ id @ (X823 @ id @ (sK532 @ X823)) @ id)) != $true)) | (((sub @ (X823 @ (sK533 @ X823) @ (sK534 @ X823)) @ (sK535 @ X823))) != ((X823 @ (comp @ (sK533 @ X823) @ (sK535 @ X823)) @ (sub @ (sK534 @ X823) @ (sK535 @ X823))))) | (((sK529 @ id @ (lam @ (X823 @ sh @ one)) @ id)) = $true)) & ! [X828 : term] : (($true = ((sK531 @ (sub @ sK530 @ (push @ X828 @ id))))) | ($true != ((sK531 @ X828))))) & ! [X829 : term] : (((sub @ X829 @ id)) = X829))) & ((axidl = $true) | (((comp @ id @ sK536)) != sK536)) & (! [X831 : subst] : (((comp @ id @ X831)) = X831) | (axidl != $true)) & (hoasapnotvar_lthm = $true) & (hoasinduction_lem2_lthm = $true) & (! [X832 : term,X833 : subst,X834 : (term > $o)] : ! [X836 : term] : (((X834 @ (sub @ X836 @ (push @ X832 @ X833)))) = ((sK537 @ X834 @ X833 @ X832 @ X836))) | (pushprop_lem0 != $true)) & ((pushprop_lem0 = $true) | ! [X840 : (term > $o)] : (((X840 @ (sK541 @ X840))) != ((sK540 @ (sub @ (sK541 @ X840) @ (push @ sK538 @ sK539))))))),
  inference(skolemize,[status(esa),new_symbols(skolem,[sK124,sK125,sK126,vAPP,sK134,vAPP,sK136,sK137,sK138,sK139,vAPP,sK146,sK147,sK148,sK149,sK150,sK151,vAPP,sK158,sK159,sK160,sK161,vAPP,sK163,sK164,vAPP,sK172,sK173,sK174,sK175,sK176,sK177,sK178,vAPP,sK203,sK204,vAPP,sK206,sK207,sK208,sK209,sK210,sK211,sK212,vAPP,sK224,sK225,sK226,sK227,sK228,sK229,vAPP,sK232,sK233,vAPP,sK238,sK239,vAPP,sK246,sK247,sK248,vAPP,sK264,sK265,vAPP,sK267,vAPP,sK269,sK270,sK271,vAPP,sK276,sK277,sK278,vAPP,sK293,vAPP,sK296,sK297,sK298,sK299,sK300,sK301,sK302,sK303,sK304,sK305,sK306,sK307,sK308,vAPP,sK313,vAPP,sK325,sK326,vAPP,sK331,sK332,vAPP,sK343,sK344,vAPP,sK347,sK348,sK349,vAPP,sK352,vAPP,sK363,sK364,vAPP,sK366,vAPP,sK368,sK369,sK370,sK371,vAPP,sK376,sK377,sK378,sK379,vAPP,sK381,sK382,sK383,sK384,sK385,sK386,sK387,sK388,sK389,sK390,sK391,sK392,sK393,sK394,sK395,vAPP,sK397,sK398,sK399,sK400,sK401,sK402,sK403,sK404,sK405,vAPP,sK410,vAPP,sK413,vAPP,sK418,sK419,vAPP,sK427,sK428,sK429,sK430,vAPP,sK434,sK435,vAPP,sK438,sK439,sK440,vAPP,sK448,sK449,vAPP,sK454,sK455,sK456,sK457,vAPP,sK462,sK463,sK464,vAPP,sK466,sK467,sK468,sK469,sK470,sK471,sK472,sK473,sK474,sK475,sK476,vAPP,sK478,sK479,sK480,sK481,sK482,sK483,sK484,sK485,sK486,sK487,sK488,sK489,sK490,vAPP,sK502,sK503,sK504,vAPP,sK511,sK512,vAPP,sK528,sK529,sK530,sK531,vAPP,sK536,vAPP,sK538,sK539,sK540,vAPP]),skolemize(X0,$thf(sK124)),skolemize(X1,$thf(sK125)),skolemize(X2,$thf(sK126)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X21,$thf(sK134)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X24,$thf(sK136)),skolemize(X25,$thf(sK137)),skolemize(X26,$thf(sK138)),skolemize(X27,$thf(sK139)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X50,$thf(sK146)),skolemize(X51,$thf(sK147)),skolemize(X52,$thf(sK148)),skolemize(X53,$thf(sK149)),skolemize(X54,$thf(sK150)),skolemize(X55,$thf(sK151)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X66,$thf(sK158)),skolemize(X67,$thf(sK159)),skolemize(X68,$thf(sK160)),skolemize(X69,$thf(sK161)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X78,$thf(sK163)),skolemize(X79,$thf(sK164)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X96,$thf(sK172)),skolemize(X99,$thf(sK173)),skolemize(X101,$thf(sK174)),skolemize(X102,$thf(sK175)),skolemize(X104,$thf(sK176)),skolemize(X105,$thf(sK177)),skolemize(X106,$thf(sK178)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X150,$thf(sK203)),skolemize(X151,$thf(sK204)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X157,$thf(sK206)),skolemize(X158,$thf(sK207)),skolemize(X159,$thf(sK208)),skolemize(X174,$thf(sK209)),skolemize(X175,$thf(sK210)),skolemize(X176,$thf(sK211)),skolemize(X177,$thf(sK212)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X193,$thf(sK224)),skolemize(X194,$thf(sK225)),skolemize(X195,$thf(sK226)),skolemize(X196,$thf(sK227)),skolemize(X209,$thf(sK228)),skolemize(X210,$thf(sK229)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X219,$thf(sK232)),skolemize(X220,$thf(sK233)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X228,$thf(sK238)),skolemize(X229,$thf(sK239)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X244,$thf(sK246)),skolemize(X245,$thf(sK247)),skolemize(X246,$thf(sK248)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X285,$thf(sK264)),skolemize(X286,$thf(sK265)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X292,$thf(sK267)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X295,$thf(sK269)),skolemize(X296,$thf(sK270)),skolemize(X297,$thf(sK271)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X305,$thf(sK276)),skolemize(X306,$thf(sK277)),skolemize(X307,$thf(sK278)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X338,$thf(sK293)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X344,$thf(sK296)),skolemize(X345,$thf(sK297)),skolemize(X351,$thf(sK298)),skolemize(X352,$thf(sK299)),skolemize(X355,$thf(sK300)),skolemize(X356,$thf(sK301)),skolemize(X357,$thf(sK302)),skolemize(X358,$thf(sK303)),skolemize(X359,$thf(sK304)),skolemize(X362,$thf(sK305)),skolemize(X363,$thf(sK306)),skolemize(X366,$thf(sK307)),skolemize(X367,$thf(sK308)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X378,$thf(sK313)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X398,$thf(sK325)),skolemize(X399,$thf(sK326)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X416,$thf(sK331)),skolemize(X417,$thf(sK332)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X439,$thf(sK343)),skolemize(X440,$thf(sK344)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X451,$thf(sK347)),skolemize(X452,$thf(sK348)),skolemize(X453,$thf(sK349)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X460,$thf(sK352)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X485,$thf(sK363)),skolemize(X486,$thf(sK364)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X492,$thf(sK366)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X495,$thf(sK368)),skolemize(X496,$thf(sK369)),skolemize(X497,$thf(sK370)),skolemize(X498,$thf(sK371)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X506,$thf(sK376)),skolemize(X507,$thf(sK377)),skolemize(X508,$thf(sK378)),skolemize(X509,$thf(sK379)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X518,$thf(sK381)),skolemize(X519,$thf(sK382)),skolemize(X525,$thf(sK383)),skolemize(X526,$thf(sK384)),skolemize(X527,$thf(sK385)),skolemize(X528,$thf(sK386)),skolemize(X529,$thf(sK387)),skolemize(X530,$thf(sK388)),skolemize(X531,$thf(sK389)),skolemize(X532,$thf(sK390)),skolemize(X533,$thf(sK391)),skolemize(X539,$thf(sK392)),skolemize(X540,$thf(sK393)),skolemize(X541,$thf(sK394)),skolemize(X542,$thf(sK395)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X553,$thf(sK397)),skolemize(X554,$thf(sK398)),skolemize(X555,$thf(sK399)),skolemize(X556,$thf(sK400)),skolemize(X559,$thf(sK401)),skolemize(X560,$thf(sK402)),skolemize(X561,$thf(sK403)),skolemize(X562,$thf(sK404)),skolemize(X563,$thf(sK405)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X577,$thf(sK410)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X581,$thf(sK413)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X597,$thf(sK418)),skolemize(X598,$thf(sK419)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X609,$thf(sK427)),skolemize(X610,$thf(sK428)),skolemize(X613,$thf(sK429)),skolemize(X614,$thf(sK430)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X627,$thf(sK434)),skolemize(X628,$thf(sK435)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X632,$thf(sK438)),skolemize(X633,$thf(sK439)),skolemize(X634,$thf(sK440)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X655,$thf(sK448)),skolemize(X656,$thf(sK449)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X667,$thf(sK454)),skolemize(X668,$thf(sK455)),skolemize(X669,$thf(sK456)),skolemize(X670,$thf(sK457)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X679,$thf(sK462)),skolemize(X680,$thf(sK463)),skolemize(X681,$thf(sK464)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X692,$thf(sK466)),skolemize(X693,$thf(sK467)),skolemize(X694,$thf(sK468)),skolemize(X695,$thf(sK469)),skolemize(X696,$thf(sK470)),skolemize(X697,$thf(sK471)),skolemize(X698,$thf(sK472)),skolemize(X699,$thf(sK473)),skolemize(X700,$thf(sK474)),skolemize(X707,$thf(sK475)),skolemize(X708,$thf(sK476)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X711,$thf(sK478)),skolemize(X713,$thf(sK479)),skolemize(X714,$thf(sK480)),skolemize(X719,$thf(sK481)),skolemize(X720,$thf(sK482)),skolemize(X725,$thf(sK483)),skolemize(X726,$thf(sK484)),skolemize(X727,$thf(sK485)),skolemize(X728,$thf(sK486)),skolemize(X729,$thf(sK487)),skolemize(X730,$thf(sK488)),skolemize(X731,$thf(sK489)),skolemize(X732,$thf(sK490)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X757,$thf(sK502)),skolemize(X758,$thf(sK503)),skolemize(X759,$thf(sK504)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X783,$thf(sK511)),skolemize(X784,$thf(sK512)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X810,$thf(sK528)),skolemize(X811,$thf(sK529)),skolemize(X812,$thf(sK530)),skolemize(X813,$thf(sK531)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X830,$thf(sK536)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X837,$thf(sK538)),skolemize(X838,$thf(sK539)),skolemize(X839,$thf(sK540)),skolemize(X27,$thf(sK25 @ X16))],[f59])).
thf(f61,plain,(
  (? [X1 : (subst > term > subst > $o),X0 : (term > $o)] : (! [X5 : subst,X2 : subst,X4 : subst,X3 : term] : (($true != ((X1 @ X4 @ X3 @ (comp @ X5 @ X2)))) | ($true = ((X1 @ (comp @ X4 @ X5) @ (sub @ X3 @ X5) @ X2)))) & ! [X9 : term,X8 : subst,X6 : subst,X7 : subst] : (($true != ((X1 @ (comp @ X8 @ X6) @ (sub @ X9 @ X6) @ X7))) | (((X1 @ X8 @ X9 @ (comp @ X6 @ X7))) = $true)) & ($true = ((hoasinduction_p_and_p_prime @ X1 @ X0))) & ! [X10 : term,X11 : term] : (($true != ((X1 @ id @ X11 @ id))) | (((X1 @ id @ (hoasap @ id @ X10 @ id @ X11) @ id)) = $true) | ($true != ((X1 @ id @ X10 @ id)))) & ? [X12 : term,X13 : term] : (($true = ((X0 @ X12))) & ($true != ((X0 @ (ap @ X13 @ X12)))) & ($true = ((X0 @ X13))))) | (hoasinduction_lem2v2 != $true)) & (! [X1 : (subst > term > subst > $o),X0 : (term > $o)] : (? [X5 : subst,X2 : subst,X4 : subst,X3 : term] : (($true = ((X1 @ X4 @ X3 @ (comp @ X5 @ X2)))) & ($true != ((X1 @ (comp @ X4 @ X5) @ (sub @ X3 @ X5) @ X2)))) | ? [X9 : term,X8 : subst,X6 : subst,X7 : subst] : (($true = ((X1 @ (comp @ X8 @ X6) @ (sub @ X9 @ X6) @ X7))) & (((X1 @ X8 @ X9 @ (comp @ X6 @ X7))) != $true)) | ($true != ((hoasinduction_p_and_p_prime @ X1 @ X0))) | ? [X10 : term,X11 : term] : (($true = ((X1 @ id @ X11 @ id))) & (((X1 @ id @ (hoasap @ id @ X10 @ id @ X11) @ id)) != $true) & ($true = ((X1 @ id @ X10 @ id)))) | ! [X12 : term,X13 : term] : (($true != ((X0 @ X12))) | ($true = ((X0 @ (ap @ X13 @ X12)))) | ($true != ((X0 @ X13))))) | (hoasinduction_lem2v2 = $true))),
  inference(nnf_transformation,[],[f13])).
thf(f62,plain,(
  (? [X0 : (subst > term > subst > $o),X1 : (term > $o)] : (! [X2 : subst,X3 : subst,X4 : subst,X5 : term] : (($true != ((X0 @ X4 @ X5 @ (comp @ X2 @ X3)))) | (((X0 @ (comp @ X4 @ X2) @ (sub @ X5 @ X2) @ X3)) = $true)) & ! [X6 : term,X7 : subst,X8 : subst,X9 : subst] : ((((X0 @ (comp @ X7 @ X8) @ (sub @ X6 @ X8) @ X9)) != $true) | (((X0 @ X7 @ X6 @ (comp @ X8 @ X9))) = $true)) & (((hoasinduction_p_and_p_prime @ X0 @ X1)) = $true) & ! [X10 : term,X11 : term] : (($true != ((X0 @ id @ X11 @ id))) | ($true = ((X0 @ id @ (hoasap @ id @ X10 @ id @ X11) @ id))) | (((X0 @ id @ X10 @ id)) != $true)) & ? [X12 : term,X13 : term] : ((((X1 @ X12)) = $true) & (((X1 @ (ap @ X13 @ X12))) != $true) & (((X1 @ X13)) = $true))) | (hoasinduction_lem2v2 != $true)) & (! [X14 : (subst > term > subst > $o),X15 : (term > $o)] : (? [X16 : subst,X17 : subst,X18 : subst,X19 : term] : ((((X14 @ X18 @ X19 @ (comp @ X16 @ X17))) = $true) & ($true != ((X14 @ (comp @ X18 @ X16) @ (sub @ X19 @ X16) @ X17)))) | ? [X20 : term,X21 : subst,X22 : subst,X23 : subst] : ((((X14 @ (comp @ X21 @ X22) @ (sub @ X20 @ X22) @ X23)) = $true) & (((X14 @ X21 @ X20 @ (comp @ X22 @ X23))) != $true)) | ($true != ((hoasinduction_p_and_p_prime @ X14 @ X15))) | ? [X24 : term,X25 : term] : (($true = ((X14 @ id @ X25 @ id))) & ($true != ((X14 @ id @ (hoasap @ id @ X24 @ id @ X25) @ id))) & (((X14 @ id @ X24 @ id)) = $true)) | ! [X26 : term,X27 : term] : (($true != ((X15 @ X26))) | ($true = ((X15 @ (ap @ X27 @ X26)))) | ($true != ((X15 @ X27))))) | (hoasinduction_lem2v2 = $true))),
  inference(rectify,[],[f61])).
thf(f63,plain,(
  ((! [X2 : subst,X3 : subst,X4 : subst,X5 : term] : (($true != ((sK542 @ X4 @ X5 @ (comp @ X2 @ X3)))) | ($true = ((sK542 @ (comp @ X4 @ X2) @ (sub @ X5 @ X2) @ X3)))) & ! [X6 : term,X7 : subst,X8 : subst,X9 : subst] : ((((sK542 @ (comp @ X7 @ X8) @ (sub @ X6 @ X8) @ X9)) != $true) | ($true = ((sK542 @ X7 @ X6 @ (comp @ X8 @ X9))))) & ($true = ((hoasinduction_p_and_p_prime @ sK542 @ sK543))) & ! [X10 : term,X11 : term] : (($true != ((sK542 @ id @ X11 @ id))) | (((sK542 @ id @ (hoasap @ id @ X10 @ id @ X11) @ id)) = $true) | ($true != ((sK542 @ id @ X10 @ id)))) & (($true = ((sK543 @ sK544))) & ($true != ((sK543 @ (ap @ sK545 @ sK544)))) & (((sK543 @ sK545)) = $true))) | (hoasinduction_lem2v2 != $true)) & (! [X14 : (subst > term > subst > $o),X15 : (term > $o)] : (((((X14 @ (sK548 @ X14) @ (sK549 @ X14) @ (comp @ (sK546 @ X14) @ (sK547 @ X14)))) = $true) & ($true != ((X14 @ (comp @ (sK548 @ X14) @ (sK546 @ X14)) @ (sub @ (sK549 @ X14) @ (sK546 @ X14)) @ (sK547 @ X14))))) | (($true = ((X14 @ (comp @ (sK551 @ X14) @ (sK552 @ X14)) @ (sub @ (sK550 @ X14) @ (sK552 @ X14)) @ (sK553 @ X14)))) & (((X14 @ (sK551 @ X14) @ (sK550 @ X14) @ (comp @ (sK552 @ X14) @ (sK553 @ X14)))) != $true)) | ($true != ((hoasinduction_p_and_p_prime @ X14 @ X15))) | (($true = ((X14 @ id @ (sK555 @ X14) @ id))) & ($true != ((X14 @ id @ (hoasap @ id @ (sK554 @ X14) @ id @ (sK555 @ X14)) @ id))) & ($true = ((X14 @ id @ (sK554 @ X14) @ id)))) | ! [X26 : term,X27 : term] : (($true != ((X15 @ X26))) | ($true = ((X15 @ (ap @ X27 @ X26)))) | ($true != ((X15 @ X27))))) | (hoasinduction_lem2v2 = $true))),
  inference(skolemize,[status(esa),new_symbols(skolem,[sK542,sK543,sK544,sK545,vAPP]),skolemize(X0,$thf(sK542)),skolemize(X1,$thf(sK543)),skolemize(X12,$thf(sK544)),skolemize(X13,$thf(sK545)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16)),skolemize(X27,$thf(sK25 @ X16))],[f62])).
thf(f396,plain,(
  ( ! [X791 : d_term] : ((d_one = X791)) )),
  inference(cnf_transformation,[],[f60])).
thf(f551,plain,(
  (laminj = $true) | (sK402 != sK401)),
  inference(cnf_transformation,[],[f60])).
thf(f552,plain,(
  ( ! [X558 : term,X557 : term] : ((laminj != $true) | (((lam @ X558)) != ((lam @ X557))) | (X557 = X558)) )),
  inference(cnf_transformation,[],[f60])).
thf(f563,plain,(
  (((d2term @ d_one)) = one)),
  inference(cnf_transformation,[],[f60])).
thf(f861,plain,(
  (((sK225 @ sK224)) = $true) | (hoasinduction_lem2v2 = $true)),
  inference(cnf_transformation,[],[f60])).
thf(f862,plain,(
  ($true != ((sK225 @ (ap @ sK224 @ sK226)))) | (hoasinduction_lem2v2 = $true)),
  inference(cnf_transformation,[],[f60])).
thf(f989,plain,(
  ( ! [X76 : term] : ((((d2term @ (sK162 @ X76))) = X76)) )),
  inference(cnf_transformation,[],[f60])).
thf(f1035,plain,(
  (hoasinduction_lem2v2 != $true) | ($true != ((sK543 @ (ap @ sK545 @ sK544))))),
  inference(cnf_transformation,[],[f63])).
thf(f1036,plain,(
  ($true = ((sK543 @ sK544))) | (hoasinduction_lem2v2 != $true)),
  inference(cnf_transformation,[],[f63])).
thf(f1567,definition,(
  spl556_45 <=> ! [X34 : term,X35 : term] : ((X34 = X35) | (((lam @ X34)) != ((lam @ X35))))),
  introduced(definition,[new_symbols(definition,[spl556_45])],[avatar_definition])).
thf(f1568,plain,(
  ( ! [X34 : term,X35 : term] : ((((lam @ X34)) != ((lam @ X35))) | (X34 = X35)) ) | ~spl556_45),
  inference(avatar_component_clause,[],[f1567])).
thf(f1630,definition,(
  spl556_61 <=> (laminj = $true)),
  introduced(definition,[new_symbols(definition,[spl556_61])],[avatar_definition])).
thf(f1686,definition,(
  spl556_75 <=> (hoasinduction_lem2v2 = $true)),
  introduced(definition,[new_symbols(definition,[spl556_75])],[avatar_definition])).
thf(f2373,definition,(
  spl556_242 <=> (sK402 = sK401)),
  introduced(definition,[new_symbols(definition,[spl556_242])],[avatar_definition])).
thf(f2375,plain,(
  (sK402 != sK401) | spl556_242),
  inference(avatar_component_clause,[],[f2373])).
thf(f2376,plain,(
  spl556_61 | ~spl556_242),
  inference(avatar_split_clause,[],[f551,f2373,f1630])).
thf(f2590,definition,(
  spl556_292 <=> (((sK225 @ sK224)) = $true)),
  introduced(definition,[new_symbols(definition,[spl556_292])],[avatar_definition])).
thf(f2592,plain,(
  (((sK225 @ sK224)) = $true) | ~spl556_292),
  inference(avatar_component_clause,[],[f2590])).
thf(f2593,plain,(
  spl556_292 | spl556_75),
  inference(avatar_split_clause,[],[f861,f1686,f2590])).
thf(f2892,definition,(
  spl556_360 <=> ($true = ((sK543 @ (ap @ sK545 @ sK544))))),
  introduced(definition,[new_symbols(definition,[spl556_360])],[avatar_definition])).
thf(f2894,plain,(
  ($true != ((sK543 @ (ap @ sK545 @ sK544)))) | spl556_360),
  inference(avatar_component_clause,[],[f2892])).
thf(f2895,plain,(
  ~spl556_75 | ~spl556_360),
  inference(avatar_split_clause,[],[f1035,f2892,f1686])).
thf(f2950,plain,(
  spl556_45 | ~spl556_61),
  inference(avatar_split_clause,[],[f552,f1630,f1567])).
thf(f4239,definition,(
  spl556_661 <=> (((d2term @ d_one)) = one)),
  introduced(definition,[new_symbols(definition,[spl556_661])],[avatar_definition])).
thf(f4241,plain,(
  (((d2term @ d_one)) = one) | ~spl556_661),
  inference(avatar_component_clause,[],[f4239])).
thf(f4242,plain,(
  spl556_661),
  inference(avatar_split_clause,[],[f563,f4239])).
thf(f4262,definition,(
  spl556_666 <=> ($true = ((sK543 @ sK544)))),
  introduced(definition,[new_symbols(definition,[spl556_666])],[avatar_definition])).
thf(f4264,plain,(
  ($true = ((sK543 @ sK544))) | ~spl556_666),
  inference(avatar_component_clause,[],[f4262])).
thf(f4265,plain,(
  spl556_666 | ~spl556_75),
  inference(avatar_split_clause,[],[f1036,f1686,f4262])).
thf(f4289,definition,(
  spl556_672 <=> ($true = ((sK225 @ (ap @ sK224 @ sK226))))),
  introduced(definition,[new_symbols(definition,[spl556_672])],[avatar_definition])).
thf(f4291,plain,(
  ($true != ((sK225 @ (ap @ sK224 @ sK226)))) | spl556_672),
  inference(avatar_component_clause,[],[f4289])).
thf(f4292,plain,(
  spl556_75 | ~spl556_672),
  inference(avatar_split_clause,[],[f862,f4289,f1686])).
thf(f5460,plain,(
  ( ! [X0 : d_term] : ((one = ((d2term @ X0)))) ) | ~spl556_661),
  inference(superposition,[],[f4241,f396])).
thf(f5867,plain,(
  ( ! [X76 : term] : ((one = X76)) ) | ~spl556_661),
  inference(backward_demodulation,[],[f989,f5460])).
thf(f5868,plain,(
  ( ! [X34 : term,X35 : term] : ((one != ((lam @ X35))) | (X34 = X35)) ) | (~spl556_45 | ~spl556_661)),
  inference(backward_demodulation,[],[f1568,f5867])).
thf(f5883,plain,(
  ( ! [X0 : term,X1 : term] : ((X0 = X1)) ) | ~spl556_661),
  inference(superposition,[],[f5867,f5867])).
thf(f5907,plain,(
  ( ! [X34 : term,X35 : term] : ((X34 = X35)) ) | (~spl556_45 | ~spl556_661)),
  inference(forward_subsumption_resolution,[],[f5868,f5867])).
thf(f5949,plain,(
  ( ! [X0 : term] : (($true = ((sK225 @ X0)))) ) | (~spl556_45 | ~spl556_292 | ~spl556_661)),
  inference(superposition,[],[f2592,f5907])).
thf(f5987,plain,(
  $false | (spl556_242 | ~spl556_661)),
  inference(forward_subsumption_resolution,[],[f2375,f5883])).
thf(f5988,plain,(
  spl556_242 | ~spl556_661),
  inference(avatar_contradiction_clause,[],[f5987])).
thf(f6307,plain,(
  $false | (~spl556_45 | ~spl556_292 | ~spl556_661 | spl556_672)),
  inference(forward_subsumption_resolution,[],[f4291,f5949])).
thf(f6308,plain,(
  ~spl556_45 | ~spl556_292 | ~spl556_661 | spl556_672),
  inference(avatar_contradiction_clause,[],[f6307])).
thf(f6313,definition,(
  spl556_960 <=> ($true = ((sK543 @ one)))),
  introduced(definition,[new_symbols(definition,[spl556_960])],[avatar_definition])).
thf(f6315,plain,(
  ($true = ((sK543 @ one))) | ~spl556_960),
  inference(avatar_component_clause,[],[f6313])).
thf(f6319,plain,(
  ($true = ((sK543 @ one))) | (~spl556_661 | ~spl556_666)),
  inference(superposition,[],[f4264,f5867])).
thf(f6320,plain,(
  spl556_960 | ~spl556_661 | ~spl556_666),
  inference(avatar_split_clause,[],[f6319,f4262,f4239,f6313])).
thf(f6382,plain,(
  ($true != ((sK543 @ one))) | (spl556_360 | ~spl556_661)),
  inference(superposition,[],[f2894,f5867])).
thf(f6393,plain,(
  $false | (spl556_360 | ~spl556_661 | ~spl556_960)),
  inference(forward_subsumption_resolution,[],[f6382,f6315])).
thf(f6394,plain,(
  spl556_360 | ~spl556_661 | ~spl556_960),
  inference(avatar_contradiction_clause,[],[f6393])).
cnf(s191, plain, spl556_61 | ~spl556_242, inference(sat_conversion,[],[f2376])).
cnf(s249, plain, spl556_75 | spl556_292, inference(sat_conversion,[],[f2593])).
cnf(s335, plain, ~spl556_75 | ~spl556_360, inference(sat_conversion,[],[f2895])).
cnf(s349, plain, spl556_45 | ~spl556_61, inference(sat_conversion,[],[f2950])).
cnf(s728, plain, spl556_661, inference(sat_conversion,[],[f4242])).
cnf(s735, plain, ~spl556_75 | spl556_666, inference(sat_conversion,[],[f4265])).
cnf(s743, plain, spl556_75 | ~spl556_672, inference(sat_conversion,[],[f4292])).
cnf(s1146, plain, spl556_242 | ~spl556_661, inference(sat_conversion,[],[f5988])).
cnf(s1172, plain, ~spl556_45 | ~spl556_292 | ~spl556_661 | spl556_672, inference(sat_conversion,[],[f6308])).
cnf(s1174, plain, ~spl556_661 | ~spl556_666 | spl556_960, inference(sat_conversion,[],[f6320])).
cnf(s1182, plain, spl556_360 | ~spl556_661 | ~spl556_960, inference(sat_conversion,[],[f6394])).
cnf(s1195, plain, spl556_242, inference(rat,[],[s1146,s728])).
cnf(s1240, plain, spl556_61, inference(rat,[],[s191,s1195])).
cnf(s1241, plain, spl556_45, inference(rat,[],[s349,s1240])).
cnf(s1252, plain, spl556_75, inference(rat,[],[s1172,s249,s743,s728,s1241])).
cnf(s1257, plain, spl556_666, inference(rat,[],[s735,s1252])).
cnf(s1269, plain, ~spl556_360, inference(rat,[],[s335,s1252])).
cnf(s1284, plain, spl556_960, inference(rat,[],[s1174,s728,s1257])).
cnf(s1285, plain, $false, inference(rat,[],[s1182,s728,s1284,s1269])).
thf(f6395,plain,(
  $false),
  inference(avatar_sat_refutation,[],[s1285])).
% SZS output end Proof for theBenchmark
